1.在要添加的项目中选中 依赖项->右键->管理NuGet程序包(N)

2.在NuGet包管理器中输入Autofac,安装选中文件

3.在项目中找到Program.cs文件,添加如下代码

        public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
})
// 添加依赖注入
.UseServiceProviderFactory(new AutofacServiceProviderFactory());

4.在项目中找到Startup.cs文件,添加如下代码

        /// <summary>
/// 依赖注入配置容器
/// </summary>
/// <param name="builder"></param>
public void ConfigureContainer(ContainerBuilder builder)
{
////单个服务注入
//builder.RegisterType<OrderService>().As<IOrderService>(); // 获取 Service.dll 程序集服务,并注册
var assemblysService = Assembly.LoadFrom(Path.Combine(AppContext.BaseDirectory, "NetCoreWebApi.Service.dll"));
// 获取 IService.dll 程序集服务,并注册
var assemblysIService = Assembly.LoadFrom(Path.Combine(AppContext.BaseDirectory, "NetCoreWebApi.IService.dll"));
builder.RegisterAssemblyTypes(assemblysService)
.AsImplementedInterfaces()
.InstancePerDependency().PropertiesAutowired(PropertyWiringOptions.AllowCircularDependencies);
builder.RegisterAssemblyTypes(assemblysIService)
.AsImplementedInterfaces()
.InstancePerDependency().PropertiesAutowired(PropertyWiringOptions.AllowCircularDependencies);
}

5.添加好依赖注入,就可以直接在项目中使用

        private readonly ISysRoleServices _sysRoleServices;
public SysRoleController(ISysRoleServices sysRoleServices)
{
_sysRoleServices = sysRoleServices;
}

最新文章

  1. Hibernate 系列 08 - 对象识别机制
  2. 查看eclipse web项目中jsp编译后的servlet源文件【转】【JSP】
  3. 容器化redis高可用方案
  4. (五)SQL入门 数据库查询
  5. asp.net中的ListBox控件添加双击事件
  6. IOS Socket 04-利用框架CocoaAsyncSocket实现客户端/服务器端
  7. linux利用grep查看打印匹配的下几行或前后几行的命令
  8. Maven初学
  9. UI学习笔记---第四天
  10. Unable to save settings: Failed to save settings. Please restart IntelliJ IDEA 解决方案
  11. Android Retrofit实现原理分析
  12. WinSetupFromUSB 使用教程
  13. Video Cards
  14. 计算机协议、标准以及OSI模型的简单介绍
  15. swoole websocket服务推送
  16. Spring的IOC注解开发入门2
  17. Confluence 6 log4j 日志级别
  18. linux命令学习之:rm
  19. vijos p1882 智力题
  20. SpinBlur - 旋转模糊

热门文章

  1. SqlSession与SqlSessionFactory到底是什么关系?
  2. Output of C++ Program | Set 9
  3. 【Java】【设计模式】单例设计模式
  4. Mysql一致性效验_pt工具
  5. GraphQL 到底有什么魔力?
  6. 2. Go中defer使用注意事项
  7. CF469A I Wanna Be the Guy 题解
  8. ts 遇到的问题
  9. Centos使用kafka自带zookeeper安装kafka
  10. jQuery Validate表单验证判断是否验证通过