繁体   English   中英

Windsor为多个接口注册单例组件

[英]Windsor register singleton component for multiple interfaces

我想在Castle.Windsor中注册一个带有2个接口的类。

这段代码是否有用...我是否只有两个接口的实例...

Component.For<IEnvironment>().ImplementedBy<OutlookEnvironment>().LifestyleSingleton()
Component.For<IOutlookEnvironment>().ImplementedBy<OutlookEnvironment>().LifestyleSingleton()

我需要仔细检查这个,因为我的环境应该始终是同一个实例...

因此,当我使用IEnvironment接口解析时,我应该获得与使用IOutlookEnvironment解析组件时相同的实例

您需要使用Component.For方法的multi-generic-parameter重载

Component.For<IEnvironment, IOutlookEnvironment>()
         .ImplementedBy<OutlookEnvironment>()
         .LifestyleSingleton()

另请参阅文档: 使用多个服务注册组件部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM