public static IUnityContainer RegisterComponents(WebConfigValues webConfigValues) { _container = Register(new UnityContainer(), webConfigValues); // Change providers and resolvers DependencyResolver.SetResolver(new UnityDependencyResolver(_container)); GlobalConfiguration.Configuration.DependencyResolver = new Unity.WebApi.UnityDependencyResolver(_container); // Update Filter Provider //var oldProvider = FilterProviders.Providers.Single(f => f is FilterAttributeFilterProvider); //FilterProviders.Providers.Remove(oldProvider); //var provider = new UnityFilterAttributeFilterProvider(_container); //FilterProviders.Providers.Add(provider); return _container; }
public static UnityContainer Register(UnityContainer container, WebConfigValues webConfigValues) { _container = container; //_container.RegisterInstance(new UnitOfWork(), new HttpContextDisposableLifetimeManager<UnitOfWork>()); // _container.RegisterType<IUnitOfWork<voteContext>, UnitOfWork>(); _container.RegisterType<IPrincipal>(new InjectionFactory(u => HttpContext.Current.User)); RegisterAgRepositories(); RegisterDomainServices(); RegisterViewModelServices(); //_container.RegisterType<IRepositoriesWrapper, RepositoriesWrapper>(new HttpContextDisposableLifetimeManager<RepositoriesWrapper>()); _container.RegisterType<IViewModelServices, ViewModelServices>(new HttpContextDisposableLifetimeManager<ViewModelServices>()); //_container.RegisterType<IDomainServices, DomainServices>(new HttpContextDisposableLifetimeManager<DomainServices>()); //_container.AddNewExtension<Interception>(); return _container; }
protected void Application_Start() { //GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.None; var webConfig = new WebConfigValues { ServerPath = Server.MapPath("/"), SiteRoot = ConfigurationManager.AppSettings["RootServerUrl"] }; DIConfig.RegisterComponents(webConfig); AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); // We do this in DI RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); ConfigMapper.MapAll(); // Kickstart AutoMapper; Declare Maps }