.net - CaSTLe Windsor 子容器的快照

标签 .net castle-windsor nservicebus3

阅读有关 NServiceBus 3 支持子容器的页面 (http://docs.particular.net/nservicebus/containers/child-containers) 后,我期待在温莎城堡 transient 中的组件父容器 表现得像 单例 子容器 .但是,每次都会实例化来自子容器的这些父组件的依赖项。

有没有办法在温莎城堡中实现父容器快照的这种行为?换句话说,容器中的组件是 transient 的,如果是从子容器解析的,则是单例。

最佳答案

NServiceBus 使用 CaSTLe Windsor 中的 Scoped 生活方式功能来实现子容器功能,请在此处阅读有关 Scoped 生活方式的信息:http://docs.castleproject.org/Windsor.Whats-New-In-Windsor-3.ashx .所以 transient 将表现得像 transient 单例将像单例一样,作用域将像单例 pr nservicebus 请求一样。我们对 ISession 使用范围生活方式,其余 99% 使用单例。我很少需要 transient ,至少在做网络应用时是这样。为什么您希望组件根据解析位置的不同而表现不同?我很确定您可以通过另一种方式完成此操作。

关于.net - CaSTLe Windsor 子容器的快照,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10450345/

相关文章:

c# - 任务回调和 OnCompleted() 之间的区别

c# - 如何获取安装操作系统的驱动器的名称?

c# - 为什么我的 WindsorContainer 不能解析 IWindsorContainer?

.net - 将 Pooled Lifestyle 与 Windsor 中的 PerWebRequest Lifestyle 集成

nservicebus - 在 NServiceBus 3+ 中将超时管理器与分配器一起使用的正确方法是什么?

dependency-injection - NServiceBus 依赖注入(inject)

NServiceBus 与 Windows ServiceBus

.net - 如何在 WPF ListView 的特定列中居中文本?

.net - Teamcity 未使用正确的 MSbuild 版本

wcf - 为什么使用 CaSTLe Windsor 实现的 IIS 托管 WCF 服务需要基地址?