我开始使用Windsor了,我想知道何时使用container和何时使用kernel.例如
var c = new WindsorContainer();
c.Register(Component.For<ITt>().ImplementedBy<Tt>());
var tt = c.Resolve<ITt>();
Run Code Online (Sandbox Code Playgroud)
一切都很好,一切正常,但这也是c.kernel可以做同样的,为什么?
var c = new WindsorConatiner();
c.kernel.Register(Component.For<ITt>().ImplementedBy<Tt>());
var tt = c.kernel.Resolve<ITt>();
Run Code Online (Sandbox Code Playgroud)
老实说,我不也明白有什么区别 之间的 " 容器 "和" 核心 "一词.在我看来,它听起来像是不同IoC库中同一个东西的两个名字?
PS我读过这篇文章,但仍然无法理解这里有两个实现的功能吗?
更新: 刚刚在我的代码中找到这样的行
c.Kernel.Resolver.AddSubResolver(new ArrayResolver(c.Kernel));
Run Code Online (Sandbox Code Playgroud)
通过内核做到这一点的原因是什么?我完全输了