在 ASP.NET MVC 早期版本中,我们可以通过在应用的 class="lang:c# decode:true crayon-inline">RegisterRoutes 方法中设置 routes.LowercaseUrls = true ; 来将页面的 URL 链接转小写。在 ASP.NET Core MVC 中,路由的配置类似与下面的代码:
app.UseMvc(configureRoutes => { configureRoutes.MapRoute("Default", "{controller=App}/{action=Index}/{id?}"); });
问题在于 configureRoutes 的实例类型并不包含与 LowercaseUrls 类似的属性,所以我们不能在这里配置 URL 小写功能。
在 ASP.NET Core 中,LowercaseUrls 的配置依然存在,只不过需要在另一个地方配置。要实现在 ASP.NET Core 项目中实现小写的路由URL,我们只需要在 Startup 类的 ConfigureService 方法中加入一下代码即可。
services.AddRouting(options => options.LowercaseUrls = true);
本文发布于2017年9月29日,在 netcoreapp2.0 + AspNetCore 2.0 平台中测试通过,运行情况良好。