2011-06-24 136 views
1

我交换了Prism 4中的标准Unity容器,并在模块初始化时遇到问题。在我用来注入IUnityContainer之前,这允许我从模块中注册其他类型,并且都很好。Autofac集成到棱镜4

现在我注入一个AutoFac.IContainer,它没有我需要的RegisterType方法。它们位于ContainerBuilder类中。

所以简单的问题是如何在我的模块中将类型注册到我的主容器中,因为它们已加载。

感谢 克雷格

+0

可能的复制。 com/questions/6173566/run-time-registration-with-autofac)*也讨论了Prism *。 – bentayloruk

回答

4

标准Autofac方式是building your modulesIModule类,使用builder.RegisterModule将它们加载到你的容器作为注册过程的一部分。

如果你已经有一个容器,需要注册添加到它,你再次使用ContainerBuilder这样的://计算器:运行时注册对于Autofac(HTTP的

var cb = new ContainerBuilder(); 
cb.Register(...); 
... 

cb.Update(existingContainer);