Ejemplo n.º 1
0
        /// <summary>
        /// Configures the services to add to the ASP.NET MVC 6 Injection of Control (IoC) container. This method gets
        /// called by the ASP.NET runtime. See:
        /// http://blogs.msdn.com/b/webdev/archive/2014/06/17/dependency-injection-in-asp-net-vnext.aspx
        /// </summary>
        /// <param name="services">The services collection or IoC container.</param>
        public void ConfigureServices(IServiceCollection services)
        {
            ConfigureDebuggingServices(services, this.hostingEnvironment);
            ConfigureOptionsServices(services, this.configuration);
            ConfigureCachingServices(services);

            // Configure MVC routing. We store the route options for use by ConfigureSearchEngineOptimizationFilters.
            RouteOptions routeOptions = null;

            services.ConfigureRouting(
                x =>
            {
                routeOptions = x;
                ConfigureRouting(x);
            });

            // Add many MVC services to the services container.
            IMvcBuilder mvcBuilder = services.AddMvc(
                mvcOptions =>
            {
                ConfigureCacheProfiles(mvcOptions.CacheProfiles, this.configuration);
                ConfigureSearchEngineOptimizationFilters(mvcOptions.Filters, routeOptions);
                ConfigureSecurityFilters(this.hostingEnvironment, mvcOptions.Filters);
                ConfigureContentSecurityPolicyFilters(this.hostingEnvironment, mvcOptions.Filters);
            });

#if !DEBUG
            // Use pre-compiled views in release mode for quicker application start-up.
            mvcBuilder.AddPrecompiledRazorViews(GetType().GetTypeInfo().Assembly);
#endif
            ConfigureFormatters(mvcBuilder);

            ConfigureAntiforgeryServices(services, this.hostingEnvironment);
            ConfigureCustomServices(services);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Configures the services to add to the ASP.NET MVC 6 Injection of Control (IoC) container. This method gets
        /// called by the ASP.NET runtime. See:
        /// http://blogs.msdn.com/b/webdev/archive/2014/06/17/dependency-injection-in-asp-net-vnext.aspx
        /// </summary>
        /// <param name="services">The services collection or IoC container.</param>
        public void ConfigureServices(IServiceCollection services)
        {
            // $Start-ApplicationInsights$
            // Add Azure Application Insights data collection services to the services container.
            services.AddApplicationInsightsTelemetry(this.configuration);

            // $End-ApplicationInsights$
            // $Start-Glimpse$
            ConfigureDebuggingServices(services, this.hostingEnvironment);
            // $End-Glimpse$
            ConfigureOptionsServices(services, this.configuration);
            ConfigureCachingServices(services);

            // $Start-RedirectToCanonicalUrl$
            // Configure MVC routing. We store the route options for use by ConfigureSearchEngineOptimizationFilters.
            RouteOptions routeOptions = null;

            // $End-RedirectToCanonicalUrl$
            services.ConfigureRouting(
                x =>
            {
                // $Start-RedirectToCanonicalUrl$
                routeOptions = x;
                // $End-RedirectToCanonicalUrl$
                ConfigureRouting(x);
            });

            // Add many MVC services to the services container.
            IMvcBuilder mvcBuilder = services.AddMvc(
                mvcOptions =>
            {
                ConfigureCacheProfiles(mvcOptions.CacheProfiles, this.configuration);
                // $Start-RedirectToCanonicalUrl$
                ConfigureSearchEngineOptimizationFilters(mvcOptions.Filters, routeOptions);
                // $End-RedirectToCanonicalUrl$
                ConfigureSecurityFilters(this.hostingEnvironment, mvcOptions.Filters);
                // $Start-NWebSec$
                ConfigureContentSecurityPolicyFilters(this.hostingEnvironment, mvcOptions.Filters);
                // $End-NWebSec$
            });

#if !DEBUG
            // Use pre-compiled views in release mode for quicker application start-up.
            mvcBuilder.AddPrecompiledRazorViews(GetType().GetTypeInfo().Assembly);
#endif
            // $Start-CshtmlMinification$
            services.Configure <RazorViewEngineOptions>(
                options =>
            {
                options.ViewLocationExpanders.Add(new MinifiedViewLocationExpander());
            });
            // services.AddTransient<IRazorViewEngine, MinifiedRazorViewEngine>();
            // $End-CshtmlMinification$
            ConfigureFormatters(mvcBuilder);

            ConfigureAntiforgeryServices(services, this.hostingEnvironment);
            ConfigureCustomServices(services);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Configures the services to add to the ASP.NET MVC 6 Injection of Control (IoC) container. This method gets
        /// called by the ASP.NET runtime. See:
        /// http://blogs.msdn.com/b/webdev/archive/2014/06/17/dependency-injection-in-asp-net-vnext.aspx
        /// </summary>
        /// <param name="services">The services collection or IoC container.</param>
        public void ConfigureServices(IServiceCollection services)
        {
            ConfigureDebuggingServices(services, this.hostingEnvironment);
            ConfigureOptionsServices(services, this.configuration);
            ConfigureCachingServices(services);

            services.ConfigureRouting(
                x =>
            {
                ConfigureRouting(x);
            });

            // Add many MVC services to the services container.
            IMvcBuilder mvcBuilder = services.AddMvc(
                mvcOptions =>
            {
                ConfigureCacheProfiles(mvcOptions.CacheProfiles, this.configuration);
                ConfigureSecurityFilters(this.hostingEnvironment, mvcOptions.Filters);
                ConfigureContentSecurityPolicyFilters(this.hostingEnvironment, mvcOptions.Filters);
            });

#if !DEBUG
            // Use pre-compiled views in release mode for quicker application start-up.
            mvcBuilder.AddPrecompiledRazorViews(GetType().GetTypeInfo().Assembly);
#endif
            services.Configure <RazorViewEngineOptions>(
                options =>
            {
                options.ViewLocationExpanders.Add(new MinifiedViewLocationExpander());
            });
            // services.AddTransient<IRazorViewEngine, MinifiedRazorViewEngine>();
            ConfigureFormatters(mvcBuilder);

            ConfigureAntiforgeryServices(services, this.hostingEnvironment);
            ConfigureCustomServices(services);
        }