小写网址和尾部斜线

时间:2015-01-17 08:55:45

标签: asp.net-mvc asp.net-core-mvc

我使用的是ASP.NET MVC 6,我正在尝试使用小写网址和尾随斜杠。

我使用了以下内容:

RouteTable.Routes.LowercaseUrls = true;
RouteTable.Routes.AppendTrailingSlash = true;

但它给出了编译错误。只是想知道MVC 6是否有不同的方法来完成上述操作,或者与MVC5中的相同?

3 个答案:

答案 0 :(得分:22)

您现在可以使用AddRouting告诉路由引擎使用小写URL。此代码位于Startup.cs文件中:

public void ConfigureServices(IServiceCollection services)
{
    // ...ommitted code

    services.AddRouting(options =>
    {
        options.AppendTrailingSlash = true;
        options.LowercaseUrls = true;
    });
}

答案 1 :(得分:6)

从.NET Core 1.0.1开始,实现尾部斜杠和小写URL的正确语法是:

public void ConfigureServices(IServiceCollection services)
{
    // Omitted code
    // ...

    // Configure routing.
    services.Configure<RouteOptions>(options =>
    {
        options.AppendTrailingSlash = true;
        options.LowercaseUrls = true;
    });
}

答案 2 :(得分:2)

这些API尚未从ASP.NET 4.x(由MVC 5.x及更早版本使用)移植到MVC 6使用的ASP.NET 5。

此处记录了支持小写网址的功能请求(尚未解决):https://github.com/aspnet/Routing/issues/140(请注意它在路由存储库中是因为这是路由功能而不是特定于MVC)。