/// <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); }
/// <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); }
/// <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); }