ASP.NET MVC中使用Autofac依赖注入

ASP.NET MVC中使用Autofac依赖注入
2024年02月26日在.net 4.8 framework 建立的MVC项目中测试通过
引入NUGET包:Autofac和Autofac.Mvc5
Global中加入以下代码:

 //autofac注入
 ContainerBuilder builder = new ContainerBuilder();
 // Register your MVC controllers. (MvcApplication is the name of
 // the class in Global.asax.)
 builder.RegisterControllers(typeof(MvcApplication).Assembly);
 builder.RegisterType<DAL.StudentRepository>().As<DAL.IStudent>();   //这是自己写的接口及实现
 //移除原本的mvc的容器,使用AutoFac的容器,将MVC的控制器对象实例交由autofac来创建
 var container = builder.Build();
 DependencyResolver.SetResolver(new AutofacDependencyResolver(container));

HomeController中的注入代码:

        private readonly IStudent dal;

        public HomeController(IStudent dal)
        {
            this.dal = dal;
        }
然后就可以直接用接口里定义的方法了