1.在要添加的项目中选中 依赖项-右键-管理NuGet程序包(N) 2.在NuGet包管理器中输入Autofac,安装选中文件 3.在项目中找到Program.cs文件,添加如下代码 public static IHostBuilder CreateHostBuilder(s...
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; }
沃梦达教程
本文标题为:.net Core WebApi使用AutoFac
猜你喜欢
- 如何使用C# 捕获进程输出 2023-03-10
- c# 模拟线性回归的示例 2023-03-14
- Oracle中for循环的使用方法 2023-07-04
- WPF使用DrawingContext实现绘制刻度条 2023-07-04
- 在C# 8中如何使用默认接口方法详解 2023-03-29
- Unity Shader实现模糊效果 2023-04-27
- user32.dll 函数说明小结 2022-12-26
- Unity3D实现渐变颜色效果 2023-01-16
- .NET CORE DI 依赖注入 2023-09-27
- C# 使用Aspose.Cells 导出Excel的步骤及问题记录 2023-05-16