.NET 路由包含区分大小写吗?

Yas*_*ger 3 routes url-routing asp.net-core

我正在使用 .NET Core 中的路由,我注意到当我使用相同的路由但使用小写字母传递它时,我可以访问同一页面。

示例:mydomain.com/Account/Login mydomain.com/account/login

为什么在这种情况下没有区分大小写?我不习惯services.AddRouting (options => options.LowercaseUrls = true);允许这样做。

我只是想知道这种字母区别是如何发挥作用的以及为什么它会继续发挥作用。

mj1*_*313 8

引用文档

文本匹配不区分大小写,并且基于 URL 路径的解码表示。

并且services.AddRouting (options => options.LowercaseUrls = true);只是用于将路由模板转换为小写。但您仍然可以使用大写 Url 访问它。

  • 如果匹配不区分大小写,那么将路由模板小写有什么意义呢?为什么会有这样的选择呢? (2认同)
  • 我想我想通了......在使用锚标记助手生成自动链接时它可能很有用:https://learn.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/built-在/anchor-tag-helper?view=aspnetcore-6.0 (2认同)