dependency-injection - 城堡温莎 RemoveComponent False

标签 dependency-injection castle-windsor components

我在我的 Windsor 容器上调用 Kernel.RemoveComponent,它返回 false。我知道该组件存在(我已经通过使用相同的 key 调用 GetHandler 进行了验证,它返回了预期的信息)...那么为什么我不能从容器中删除我的组件?我该如何解决这个问题?

在建立 OperationContext(OpertaionContext.Current 仍然为空)之前,我在我的 WCF 服务中的独立处理程序和组件中进行了一系列身份验证和授权。在此期间,我需要从请求上下文中访问请求消息。我想将 RequestContext 实例存储在我的容器中,每个线程都有生命周期。根据每个新请求,我需要覆盖这个实例,这样我就不会检索到错误的请求消息。这对温莎来说根本就不是一件好事吗?如果我不能在重新注册每个新的 RequestContext 之前删除该组件,那么所有的 RequestContext 都将永远不会被释放,对吗?

谢谢!

最佳答案

如果有其他组件依赖于它,

RemoveComponent 将不会删除该组件。为什么要删除组件而不是首先将其放入容器中?

关于dependency-injection - 城堡温莎 RemoveComponent False,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3115621/

相关文章:

javascript - 将服务注入(inject) Angular 1.5 组件

reactjs - 使用 moment 时 DatePicker 上的 React Moment 问题(可能依赖)

javascript - webpack:如何从 "bower_components"获取 JavaScript,而不是从 "node_modules"获取 JavaScript

spring - 与 @Autowired 绑定(bind)在以 'new' 启动的实例内不起作用

dependency-injection - 如何将默认的 Guice Provider 注入(inject)到我的自定义 Provider 中?

c# - Quartz.net + NHibernate + Windsor.CaSTLe + CommonServiceLocator

c# - 使用依赖注入(inject)注入(inject)多个实现

c# - 控制台应用程序中的 windsor ioc

caSTLe-windsor - 如何配置CaSTLe Windsor以根据提供给Resolve()的参数(“名称”除外)动态选择提供程序

delphi - 可堆叠面板Delphi组件