Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }
Beispiel #4
0
        public static void RegisterServices(Container container)
        {
            RegisterDataManagers(container);

            RegisterDataLayer(container);

            RegisterApplicationLayer(container);

            var adapter = new SimpleInjectorWebApiDependencyResolver(container);
        }
Beispiel #5
0
        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>());
        }