Autofac和其他容器的不同之处是它和C#语言的结合非常紧密,在使用过程中对你的应用的侵入性几乎为零,更容易与第三方的组件集成。
Autofac的主要特性如下:
var defaultLog = new ConsoleLog(); builder.Register(c => new Connection(){ Log = c.ResolveOptional<ILog>() ?? defaultLog });
Autofac的设计上非常务实,这方面更多是为我们这些容器的使用者考虑:
组件侵入性为零:组件不需要去引用Autofac。