- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个类,我想访问我的 IOC 容器(Windsor),但是我不想保留一个静态的 IWindsorContainer 属性——我希望容器将自身注入(inject)到任何需要 IWindsorContainer 的类中构造函数依赖。
我已经用 Unity 解决了这个问题,但是当我用 Windsor 容器尝试同样的事情时,它告诉我 IWindsorContainer 没有在容器中注册。
我认为我不能只注册 IWindsorContainer => WindsorContainer,因为这将导致容器创建一个新的(或不同的)自身实例以传递给我的类,并且该实例不会注册我的所有其他类型它。我也看不到构造容器的方法,在其中注册所有类型,然后针对 IWindsorContainer 注册它自身的实例——所有注册方法只接受服务和实现的类型——从来没有一个实际的具体实例。
最佳答案
通常,您不想将容器注入(inject)您的应用程序组件中。
看到这些问题(这个问题几乎是它们的重复):
IKernel
免费注入(inject),和你
可以注册
IWindsorContainer
:
container.Register(Component.For<IWindsorContainer>().Instance(container));
关于.net - IWindsorContainer 作为类的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/673427/
我有一个类,我想访问我的 IOC 容器(Windsor),但是我不想保留一个静态的 IWindsorContainer 属性——我希望容器将自身注入(inject)到任何需要 IWindsorCont
这个例子并没有通过使用 IServiceLocator 来包装我的 Container 来使用最佳实践,但它让我有点困惑。 我认为 WindsorContainer 可以自动将其自身解析为 IWind
如何获取在 IWindsorContainer 中注册的程序集列表(不是类,一个程序集中可能有多个类)? 最佳答案 var assemblies = container.Kernel.GetAssig
我在几个代码示例中看到人们使用 IKernel 而不是使用 IWindsorContainer。为什么是这样? 这是一个例子:http://docs.castleproject.org/(S(kwaa
我在不同的项目中使用过 IWindsorContainer 和 IUnityContainer 之间的两种类型的容器来进行服务和接口(interface)绑定(bind)。但是我不太确定有什么区别?它
我是一名优秀的程序员,十分优秀!