Autofac IOC
Autofac会提供3种生命周期当我们,支持.NET和.NET CORE
1.Instance Per Dependency
推荐
每次都会返回一个新的实例,并且这是默认的生命周期。
2、Instance Per Lifetime Scope
推荐
在同作用域,服务每个请求只创建一次。
3、Single Instance
不推荐 ,这种模式很容易出问题
静态的 ,所有请求一个实例
单例模式下的常见错误用法 ,该代码只有在Singleton模式下才会有问题**
如果你非要用 Single Instance模式你的代码就需要用出调整:
改成这样你就能用单例模式了,不过还是不推荐用单例模式
.NET Core 3.x mvc 使用Autofac
如果没用过Autofac IOC的我们从零开始学起
1、创建MVC项目
默认MVC是不支持路由的,需要在Startup.cs里面加入
然后删除自带的Pages
在根目录创建Controllers文件夹和Views文件夹
2、配置Autofac
2.1 安装Nuget
Autofac和
Autofac.Extensions.DependencyInjection
2.2 修改Program
2.3 修改Startup
3、控制器里面使用注入
BLL层定义一个类