Eli*_*eth 29 c# autofac asp.net-web-api asp.net-web-api2
IProductRepositoryProxy ProductDataServiceProviderInstance = new ServiceProductDataProvider();
builder.RegisterInstance(ProductDataServiceProviderInstance).As<IProductRepositoryProxy>();
Run Code Online (Sandbox Code Playgroud)
VS
builder.RegisterType<ServiceProductDataProvider>().As<IProductRepositoryProxy>().InstancePerRequest();
Run Code Online (Sandbox Code Playgroud)
我在这里看到了来自前雇员的代码,并想知道这个人是否想要注册.SingleInstance()行为.
builder.RegisterType<ServiceProductDataProvider>().As<IProductRepositoryProxy>().SingleInstance();
Run Code Online (Sandbox Code Playgroud)
使用RegisterInstance的ServiceProductDataProvider的手动新增与Register .SingleInstance()不同吗?
Cyr*_*and 60
使用RegisterInstance的ServiceProductDataProvider的手动新增与Register .SingleInstance()不同吗?
将RegisterInstance让你在注册一个实例AutoFac.
RegisterInstance和RegisterType+ SingleInstance方法之间的区别在于该RegisterInstance方法允许您注册不是由Autofac构建的实例.
但这两种解决方案都会导致在Autofac中注册一个单例.
顺便说一句,两个注册在以下代码示例中是等效的
var instance = GetInstanceFromSomewhere();
builder.RegisterInstance<IService>(instance);
builder.Register(c => instance).As<IService>().SingleInstance();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26515 次 |
| 最近记录: |