Análise de código de diagnóstico em aplicações ASP.NET Core

Os analisadores da plataforma do compilador .NET inspecionam o código da aplicação para questões de qualidade e estilo de código.

Este artigo fornece ligações para mensagens de diagnóstico específicas para ASP.NET Core. Para mais informações sobre diagnósticos do .NET, consulte Visão Geral da análise do código-fonte do .NET.

Códigos de diagnóstico

A tabela seguinte lista os diagnósticos disponíveis para ASP.NET aplicações Core.

Note

Nem todos os diagnósticos estão disponíveis em versões mais antigas do ASP.NET Core.

ID de diagnóstico Message
ASP0000 Não ligues IServiceCollection.BuildServiceProviderConfigureServices
ASP0001 O middleware de autorização está configurado incorretamente
ASP0003 Não uses atributos de atribuição de modelos com os gestores de rotas
ASP0004 Não uses resultados de ação com os gestores de rotas
ASP0005 Não coloque atributo no método chamado pelo route handler lambda
ASP0006 Não uses números de sequência não literais
ASP0007 A opcionalidade do parâmetro de rota e do argumento está incompatível
ASP0008 Não uses ConfigureWebHost com WebApplicationBuilder.Host
ASP0009 Não uses Configure com WebApplicationBuilder.WebHost
ASP0010 Não uses UseStartup com WebApplicationBuilder.WebHost
ASP0011 Sugira usar builder.Logging por cima Host.ConfigureLogging ou WebHost.ConfigureLogging
ASP0012 Sugira usar builder.Services por cima Host.ConfigureServices ou WebHost.ConfigureServices
ASP0013 Sugiro mudar de usar Configure métodos para WebApplicationBuilder.Configuration
ASP0014 Recomenda-se o uso de registos de rotas de nível superior.
ASP0015 Sugira-se o uso de IHeaderDictionary propriedades
ASP0016 Não devolva um valor de RequestDelegate
ASP0017 Padrão de rota inválido
ASP0018 Parâmetro de rota não utilizado
ASP0019 Sugere usar IHeaderDictionary.Append o indexador
ASP0020 Tipos complexos referenciados por parâmetros de rota devem ser analisáveis
ASP0021 O tipo de retorno BindAsync do método deve ser ValueTask<T>
ASP0022 Conflito de rotas detetado entre gestores de rotas (aplicações de API mínima)
ASP0023 Conflito de rota detetado entre manipuladores de rota
ASP0024 O manipulador de rotas tem vários parâmetros com o atributo [FromBody]
ASP0025 Utilizar AddAuthorizationBuilder para registar serviços de autorização e construir políticas
ASP0026 [Authorize] é substituído por [AllowAnonymous] de uma fonte mais distante
ASP0027 Declaração da classe public Program desnecessária
ASP0028 Considere usar IPAddress.IPv6Any em vez de IPAddress.Any
BL0001 O parâmetro do componente deve ter setters públicos
BL0002 O componente tem múltiplos CaptureUnmatchedValues parâmetros
BL0003 Parâmetro componente com CaptureUnmatchedValues tem o tipo errado
BL0004 O parâmetro componente deve ser público
BL0005 O parâmetro componente não deve ser definido fora do seu componente
BL0006 Não uses tipos RenderTree
BL0007 O parâmetro de componente {0} deve ser uma propriedade automática
BL0008 Os parâmetros dos componentes devem ser propriedades automáticas
MVC1000 O uso de IHtmlHelper.Partial deve ser evitado
MVC1001 Filtros não podem ser aplicados a métodos de manipulador de páginas
MVC1002 O atributo de rota não pode ser aplicado a métodos de manipulador de página
MVC1003 Atributos de rota não podem ser aplicados a modelos de página
MVC1004 Renomear parâmetro limitado do modelo
MVC1005 Não é possível utilizar UseMvc com o roteamento de endpoints
MVC1006 Os métodos que contêm Tag Helpers (TagHelpers) devem ser assíncronos e retornam Task