IProductRepositoryProxy ProductDataServiceProviderInstance = new ServiceProductDataProvider();
builder.RegisterInstance(ProductDataServiceProviderInstance).As<IProductRepositoryProxy>();
VSAutofac registerInstance vs SingleInstance
builder.RegisterType<ServiceProductDataProvider>().As<IProductRepositoryProxy>().InstancePerRequest();
ho visto questo codice da un ex-impiegato qui e chiedo se il ragazzo ha voluto registrare un comportamento .SingleInstance().
builder.RegisterType<ServiceProductDataProvider>().As<IProductRepositoryProxy>().SingleInstance();
È il Newing-up manuale del ServiceProductDataProvider con registerInstance non è la stessa come il Registro .SingleInstance() ??
Sarebbe questo codice sia anche la stessa ed equivalente al vostro DUE .Register chiamate di cui sopra? => builder.RegisterType(). As (). SingleInstance(); Uso il RegisterType che non hai menzionato. –
Elisabeth
@Elisa non strettamente equivalente. Con la soluzione 'RegisterType' +' SingleInstance', si registra un singleton in * Autofac * (come l'altra soluzione) ma non è necessario fornire l'istanza, * Autofac * lo compilerà la prima volta che è richiesto mentre per il 'RegisterInstance' * Autofac * non crea l'istanza e deve essere creata durante il processo di registrazione –
ok ma alla fine è tecnicamente la stessa istanza di Singleton ha condiviso l'intero ciclo di vita dell'applicazione fino a quando IIS non va giù ... – Elisabeth