我有一个类,我想访问我的 IOC 容器(Windsor),但是我不想保留一个静态的 IWindsorContainer 属性——我希望容器将自身注入到任何需要 IWindsorContainer 的类中构造函数依赖。
我已经用 Unity 完成了这个,但是当我对 Windsor 容器尝试同样的事情时,它告诉我 IWindsorContainer 没有在容器中注册。
我认为我不能只注册 IWindsorContainer => WindsorContainer,因为这将导致容器创建一个新的(或不同的)自身实例以传递给我的类,并且该实例不会注册我的所有其他类型它。我也看不到构造容器的方法,在其中注册所有类型,然后针对 IWindsorContainer 注册它自身的实例——所有注册方法只接受服务和实现的类型——从来没有一个实际的具体实例。