ASP.NET MVC (.net framework) 使用 Autofac
老项目 ASP.NET MVC (.net framework) 使用 Autofac 包实现注入反转控制步骤:
1、引用nuget包:autofac 和 autofac.mvc5
2、修改 Global.asxs.cs,下面举例注入 DapperContext 实例
using System; using System.Reflection; using System.Web.Mvc; using System.Web.Optimization; using System.Web.Routing; using Autofac; using Autofac.Integration.Mvc; namespace xxx { public class MvcApplication : System.Web.HttpApplication { private static IContainer _container; public static IContainer Container { get { return _container; } } protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); ContainerBuilder builder = new ContainerBuilder(); // Register individual components builder.RegisterType<DapperContext>().SingleInstance(); builder.RegisterControllers(Assembly.GetExecutingAssembly()); //builder.Register(c => new DapperContext()).SingleInstance(); _container = builder.Build(); DependencyResolver.SetResolver(new AutofacDependencyResolver(_container)); } protected void Application_Error(object sender, EventArgs e) { Exception ex = Server.GetLastError(); //Server.ClearError(); } } }
然后在控制器构造方法里面就可以引用注入的实例了
2023-02-22
ASP.NET CORE
蔡大卫,广东揭阳人氏,现居深圳,从事互联网行业,专注程序编码工作20年。目前正在创业。
发布评论