protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); AutoMapperConfiguration.Initialize(); Log4NetLogger logger = new Log4NetLogger(); _container = BootStrap.BuildContainer(logger); DependencyResolver.SetResolver(new AutofacDependencyResolver(_container)); }
public static IContainer BuildContainer(Log4NetLogger logger) { var builder = new ContainerBuilder(); //Logger builder.RegisterInstance<ILogger>(logger); builder.Register(c => logger).As<ILogger>().SingleInstance(); //Controllers builder.RegisterControllers(typeof(MvcApplication).Assembly); //Business Management builder.RegisterType<CustomerManagementBl>().As<IBusinessManagement<CustomerBusinessModel>>(); builder.RegisterType<IngredientManagementBl>().As<IBusinessManagement<IngredientBusinessModel>>(); builder.RegisterType<ProductManagementBl>().As< IBusinessManagement<ProductBusinessModel>>(); builder.RegisterType<OrderManagementBl>().As<IBusinessManagement<OrderBusinessModel>>(); builder.RegisterType<OrderItemManagementBl>().As<IBusinessManagement<OrderItemBusinessModel>>(); builder.RegisterType<StorageManagementBl>().As<IBusinessManagement<StorageBusinessModel>>(); //Repository builder.RegisterType<Repository>().As<IRepository>(); return builder.Build(); }