IOC_Autofac(1)
1.Autofac
是一款 IOC 框架,比较其他的IOC框架,如Spring.Net,Unity, Castle 等 ,是一个轻量级的框架。
2.说明
控制反转 : IOC. 调用者 不再 创建 被调用者的 实例,由 autofac 框架实现。
依赖注入: DI 容器创建好实例后,再注入 调用者 ,称为 依赖注入。
3.安装Autofac
(1)Install-Package Autofac
(2) 注入方法一:
var builder=new ContainerBuilder();
builder.RegisterType<TestService>();
builder.RegisterType<TestDao>().As<ITestDao>();
return builder.Build();
注入方法二:
public interface IDependency(){} //该接口没有任何方法,不会对系统的业务逻辑造成污染,所有需要进行依赖注入的接口,统计成这个空接口。
public interface IUnitOfWork:IDependency{...} //业务单元操作接口
Autofac 支持 批量 子类注册。 通过 IDependency 基接口,在Global 中需要很简单的几行代码,就可以完成整个系统的依赖注入匹配
ContainerBuilder builder=new ContainerBuilder();
builder.RegisterGeneric(typeof(Repository<,>)).As(typeof(IRepository<,>));
Type baseType=typeof(IDependency);
推荐网址:
https://blog.csdn.net/july_lee/article/details/52706122