可以将一种类型注册到多个接口吗?
我有实现两个接口的类
MyService : IService1, IServier2 {}
我想为两个接口注册这个类型。
container.RegisterType<IService1, MyService>(CreateLifetime());
container.RegisterType<IService2, MyService>(CreateLifetime());
不幸的是,在解决之后我有两个不同的实例。我尝试使用共同生命周期,但后来收到消息说我不能。
我通常这样写:
.RegisterType<MyService>(CreateLifeTime())
.RegisterType<IService1, MyService>()
.RegisterType<IService2, MyService>();
当然,使用 TransientLifetimeManager,您仍然会获得两个不同的 MyService 实例。
上面的代码适用于PerResolveLifetimeManager
, PerResolveLifetimeManager
, PerThreadLifetimeManager
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)