Minúsculas todas as URLs para ações e transições de página

Data de criação de página :

ambiente

Estúdio Visual
  • Visual Studio 2019
Núcleo ASP.NET
  • 3.1 (MVC, página de navalha)

Caso de URL padrão

ASP.NET para outra URL, como um link, no aplicativo Core Web, Basicamente, é uma mistura de casos.

A lei é que para páginas razor, o nome do arquivo .cshtml na pasta Páginas, Para MVC, o nome da classe do controlador e o nome do método de ação são usados como está.

Esta lei de nomeação aplica-se apenas ASP.NET recursos principais para gerar URLs. Por exemplo, aqueles que especificam asp-xxxxx para:

<!-- Razor ページの場合 -->
<a asp-area="" asp-page="/Privacy">Privacy</a>

<!-- MVC の場合 -->
<a asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>

Isso não inclui especificações diretas de URL da seguinte forma:

<a href="/Privacy">Privacy</a>

A propósito, a URL gerada segue a lei acima. ASP.NET Core não é sensível a casos para URLs acessados. Não é acessível como você coloca o caso na URL.

Faça todas as URLs minúsculas

O acesso em si é insensível a caso, então você não precisa se preocupar com o problema enquanto ele funciona. Algumas pessoas podem não querer que o navegador da Web exiba letras maiúsculas porque exibem uma URL.

Neste caso, .cs adicionar o seguinte código à inicialização e a URL do link será minúscula.

// 追加
using Microsoft.AspNetCore.Routing;

public class Startup
{
  public void ConfigureServices(IServiceCollection services)
  {
    services.AddRazorPages();

    // 追加
    services.Configure<RouteOptions>(options =>
    {
      // URL を小文字にする
      options.LowercaseUrls = true;
    });
  }
}