public void Configuration(IAppBuilder app) { var config = new HttpConfiguration(); var dependencyResolver = new Unity.AspNet.WebApi.UnityDependencyResolver(UnityConfig.Container); config.DependencyResolver = dependencyResolver; WebApiConfig.Register(config); #if DEBUG app.UseCors(CorsOptions.AllowAll); #endif ConfigureAuth(app, dependencyResolver); app.UseWebApi(config); FilterProviders.Providers.Remove(FilterProviders.Providers.OfType <FilterAttributeFilterProvider>().First()); FilterProviders.Providers.Add(new Unity.AspNet.Mvc.UnityFilterAttributeFilterProvider(UnityConfig.Container)); DependencyResolver.SetResolver(new Unity.AspNet.Mvc.UnityDependencyResolver(UnityConfig.Container)); FilterProviders.Providers.Remove(FilterProviders.Providers.OfType <FilterAttributeFilterProvider>().First()); AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); }
/// <summary>Integrates Unity when the application starts.</summary> public static void Start() { // Use UnityHierarchicalDependencyResolver if you want to use a new child container for each IHttpController resolution. // var resolver = new UnityHierarchicalDependencyResolver(UnityConfig.GetConfiguredContainer()); var resolver = new Unity.AspNet.WebApi.UnityDependencyResolver(UnityConfig.GetConfiguredContainer()); GlobalConfiguration.Configuration.DependencyResolver = resolver; }