/// <summary> /// Redirects Unsupported Cultures. /// </summary> public static IApplicationBuilder UseRedirectUnsupportedUrlCultures(this IApplicationBuilder app, Action <RedirectUnsupportedUrlCulturesOptions> configureOptions = null) { var options = new RedirectUnsupportedUrlCulturesOptions(); if (configureOptions != null) { configureOptions(options); } return(app.UseRedirectUnsupportedUrlCultures(options)); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, RequestLocalizationOptions localizationOptions, RedirectUnsupportedUrlCulturesOptions redirectUnsupportedUrlCulturesOptions) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } else { app.UseExceptionHandler("/Home/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseRequestLocalization(localizationOptions); app.UseRedirectUnsupportedUrlCultures(redirectUnsupportedUrlCulturesOptions); app.UseUrlUnlocalization(); app.UseCookiePolicy(); app.UseMvc(routes => { if (redirectUnsupportedUrlCulturesOptions.RedirectCulturelessToDefaultCulture) { routes.MapRoute( name: "defaultWithCulture", template: "{culture:cultureCheck}/{controller=Home}/{action=Index}/{id?}"); //Other Routes routes.RedirectCulturelessToDefaultCulture(); } else { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); routes.MapRoute( name: "defaultWithCulture", template: "{culture:cultureCheck}/{controller=Home}/{action=Index}/{id?}"); //Other Routes } }); }
/// <summary> /// Redirects Unsupported Cultures. /// </summary> public static IApplicationBuilder UseRedirectUnsupportedUrlCultures(this IApplicationBuilder app, RedirectUnsupportedUrlCulturesOptions options) { return(app.UseMiddleware <RedirectUnsupportedUrlCulturesMiddleware>(options)); }