我的一位团队成员决定在我们的某项服务上使用autofac,因为我们想尝试一下,我们坚持使用它。
现在已经过了一段时间,容器设置方法已经增长了!它太大了,我们遇到了问题。
拆分它并没有带来我们寻找的结果。也许我们只是错误地使用它。
所以我的问题是:我们如何管理容器设置?我们可以转储到XML还是有其他最佳实践?
答案 0 :(得分:6)
使用autofac管理容器设置的方法有很多种。
最常见的方法之一是使用Module
并将其注册到构建器。您可以通过这种方式拆分多个注册组:
public class DALModule : Module
{
protected override void Load(ContainerBuilder builder)
{
builder.Register<SomeDataSomething>().As<IDataSomething>();
builder.Register<SomeOtherSomething( c => SomeOtherSomething.Create());
//and so on
}
}
然后通过代码或XML将这些分解的模块注册到构建器。
(对builder.RegisterModule( new DALModule())
的简单调用会在这里进行)。请参阅Structuring with Modules上的维基页面。
或者,您只能使用XML文件(或一起使用XML和模块)。请参阅XML config上的wiki页面。