.net core 3.1 Autofac自动注入

℡╲_俬逩灬. 提交于 2019-12-19 04:25:40

.Net core 3.+ 使用 Autofac 完成自动注册

 public void ConfigureServices(IServiceCollection services)
        {
            
            services.AddHttpContextAccessor();
            services.AddControllers()
            .AddControllersAsServices(); //属性注入必须加上这个            
        }
        
     public void ConfigureContainer(ContainerBuilder builder)
        {
            //获取所有控制器类型并使用属性注入
            var controllerBaseType = typeof(ControllerBase);
            builder.RegisterAssemblyTypes(typeof(Program).Assembly)
                .Where(t => controllerBaseType.IsAssignableFrom(t) && t != controllerBaseType)
                .PropertiesAutowired();           
        }

Controller 中使用

public IAccount account { get; set; }

搞定

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!