WebHost/App_Start/AutofacManage.cs

(完整代码) 1KB

using Service;
using IService;
using Autofac;
using Autofac.Extras.DynamicProxy2;
using Autofac.Integration.Mvc;
using System.Reflection;
using Common.AutoFac;
using System.Web.Optimization;
using System.Web.Mvc;
using System.Web.Http;
using System.Linq;
using System;

namespace WebUI
{
    public static class AutofacManage
    {
        internal static IContainer IocContainer ;
        public static void Register()
        {
            var build = new ContainerBuilder();
            build.RegisterModule(new ServiceModule());
            IocContainer = build.Build();
            RegisteAutoFac.FacContainner = IocContainer;
            DependencyResolver.SetResolver(new AutofacDependencyResolver(IocContainer));
        }    
    }
 
    public class ServiceModule : Autofac.Module
    {
        protected override void Load(ContainerBuilder builder)
        {
            builder.RegisterControllers(Assembly.GetExecutingAssembly()); 
            builder.RegisterAssemblyTypes(Assembly.Load("Service")).AsImplementedInterfaces();
            builder.RegisterAssemblyTypes(Assembly.Load("Dao")).AsImplementedInterfaces();
            builder.RegisterAssemblyTypes(Assembly.Load("InterceptorCenter"));
            builder.RegisterAssemblyTypes(Assembly.Load("Service")).EnableInterfaceInterceptors()
                .InterceptedBy(typeof(InterceptorCenter.InterceptorManage)).AsImplementedInterfaces();
            base.Load(builder);
        }
    }
}

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。