Autofac在ASP.NET MVC中的使用

    xiaoxiao2021-04-18  68

    ASP.NET Mvc项目用法: 先在Global.asax里面写类型注册

    using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Web; using System.Web.Mvc; using System.Web.Routing; using Autofac;//Autofac版本4.5 using Autofac.Integration.Mvc; namespace WebAutoFaceTest { public class MvcApplication : System.Web.HttpApplication { protected void Application_Start() { AreaRegistration.RegisterAllAreas(); RouteConfig.RegisterRoutes(RouteTable.Routes); var builder = new ContainerBuilder(); //注册业务层 var bll = Assembly.Load("BLL"); //AsImplementedInterfaces接口类型的注入方式 builder.RegisterAssemblyTypes(bll).AsImplementedInterfaces().InstancePerLifetimeScope(); //注册控制器 builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly()); //创建容器 IContainer container = builder.Build(); //设置依赖注入点 DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); } } }

    调用:

    public class HomeController : Controller { /// <summary> /// 构造函数注入被调用者 /// </summary> private IAnimateRun animate; public HomeController(IAnimateRun _animate) { animate = _animate; } // GET: Home public ActionResult Index() { string info = animate.Run(); ViewBag.msg = info; return View(); } }
    转载请注明原文地址: https://ju.6miu.com/read-675237.html

    最新回复(0)