把微软默认的依赖注入组件中注入的内容填充到autofac中。把IServiceCollection注入到autofac的容器中。手动创建依赖注入容器。微软默认注入容器和auto容器进行关联 电脑版发表于:2025/1/10 9:59 ### 其实核心代码就是autofac实例的`Populate`方法 关键代码如下,核心就是Populate方法: ``` IServiceCollection services = new ServiceCollection(); // 一些注入..... var builder = new ContainerBuilder(); // 把微软默认的依赖注入组件中注入的内容填充到autofac中 builder.Populate(services); ``` **一些常规的注入配合:** ``` public Autofac.IContainer DICollections() { IServiceCollection services = new ServiceCollection(); services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>(); services.AddScoped(typeof(IRepository<>), typeof(Repository<>));// 注入仓储 services.AddSqlsugar();// 注入SqlSugar的实例 services.AddAutoMapper(typeof(ApplicationAutoMapperProfile));// 注册 AutoMapper var builder = new ContainerBuilder(); // 把微软默认的依赖注入组件中注入的内容填充到autofac中 builder.Populate(services); builder.RegisterModule(new AutofacModuleRegister()); // autofac里边的注入 var ApplicationContainer = builder.Build(); return ApplicationContainer; } ``` **其实在和.net core web项目结合的里边也能看到这个方法的** ![](https://img.tnblog.net/arcimg/aojiancc2/8d9acf6258714b02b25a2a08b6f6a87d.png) 直接f12进去看一下这个类,然后在CreateBuilder里边就能看到这个方法了 ![](https://img.tnblog.net/arcimg/aojiancc2/e5a27fc4d1314bbc92c3327ce44d54ba.png)