我希望了解在一个解决方案的不同项目中,将对象注册到IoC容器的最佳实践。
我有一个包含4个项目的解决方案,我看到一种解决方案是在每个项目中创建安装程序,然后在一个地方调用类似这样的东西:
_container = new WindsorContainer();
var assemblyNames = new[] {"Dal", "Utils" };
_container.Install(assemblyNames.Select(
x => (IWindsorInstaller)new AssemblyInstaller(Assembly.Load(x),
new InstallerFactory())).ToArray());
我看到一种解决方案是,在每个项目中创建一个容器,并在其中注册与该特定项目相关的对象。
那么,这种情况下最佳实践是什么?