private void AddWebApiConfiguration(IAppBuilder app) { var config = new HttpConfiguration(); var container = IocInitializer.InitializeContainer(RegisterFilters, FileVersion.Value); var resolver = new SimpleInjectorWebApiDependencyResolver(container); config.DependencyResolver = resolver; // An important note: These are executed in reverse order of adding. config.Filters.Add(new ExceptionFilterDispatcher(container.GetAllInstances)); config.Filters.Add(new ActionFilterDispatcher(container.GetAllInstances)); config.Filters.Add(new AuthorizationFilterDispatcher(container.GetAllInstances)); config.MapHttpAttributeRoutes(); ConfigureFormatters(config); ConfigureSwagger(config); app.UseWebApi(config); var cors = new EnableCorsAttribute("*", "*", "*"); config.EnableCors(cors); }
public virtual void Configuration(IAppBuilder app) { app.Use(typeof(RequestTracingMiddleware)); app.UseCors(CorsOptions.AllowAll); app.UseRequestScopeContext(); var resolver = new SimpleInjectorWebApiDependencyResolver(IocContainerProvider.CurrentContainer); GlobalConfiguration.Configuration.DependencyResolver = resolver; var httpConfig = new HttpConfiguration { DependencyResolver = resolver }; ConfigureHttp(app, httpConfig); /*app.UseJwtBearerAuthentication(new JwtBearerAuthenticationOptions() * { * AuthenticationMode = AuthenticationMode.Active, * Provider = new PlatformAuthenticationProvider(), * AllowedAudiences = new[] { DefaultAudience }, * IssuerSecurityTokenProviders = new IIssuerSecurityTokenProvider[] * { * new SymmetricKeyIssuerSecurityTokenProvider(ConfigurationManager.AppSettings["jwtIssuer"], * ConfigurationManager.AppSettings["jwtSecret"]) * } * });*/ app.UseWebApi(httpConfig); }
protected void Application_Start() { var resolver = new SimpleInjectorWebApiDependencyResolver(SimpleInjectorContainer.RegisterServices()); GlobalConfiguration.Configuration.DependencyResolver = resolver; DependencyResolver.SetResolver(SimpleInjectorContainer.RegisterServices()); AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); }
public static void RegisterServices(Container container) { RegisterDataManagers(container); RegisterDataLayer(container); RegisterApplicationLayer(container); var adapter = new SimpleInjectorWebApiDependencyResolver(container); }
public static void Initialize(HttpConfiguration config) { var container = new Container(); container.Options.DefaultScopedLifestyle = new WebApiRequestLifestyle(); // Chamada dos módulos do Simple Injector BootsTrapper.Register(container); var dependencyResolver = new SimpleInjectorWebApiDependencyResolver(container); container.RegisterSingleton <IBus>(() => new Bus(new DomainEventsContainer(dependencyResolver))); container.RegisterWebApiControllers(config); container.Verify(); GlobalConfiguration.Configuration.DependencyResolver = dependencyResolver; DomainEvent.Container = new DomainEventsContainer(dependencyResolver); RegisterSubscribers(container.GetInstance <IBus>()); }