Partilhar via


Desabilitar a análise do código-fonte para .NET

O Visual Studio permite controlar se os analisadores de código-fonte são executados em tempo de compilação e em tempo de design. Há limitações para o que você pode desabilitar, e o procedimento para desativar a análise de código difere dependendo de alguns fatores:

  • Tipo de projeto (.NET Core, .NET Standard e .NET 5+ versus .NET Framework)

    Os projetos .NET Core, .NET Standard e .NET 5+ têm opções em sua página de propriedades de Análise de Código que permitem desativar a análise de código de analisadores instalados como um pacote NuGet. Para obter mais informações, consulte Projetos .NET Core, .NET Standard e .NET 5+. Por outro lado, os projetos do .NET Framework exigem que você defina propriedades no arquivo de projeto. Para desativar a análise de código-fonte para projetos do .NET Framework, consulte Projetos do .NET Framework.

  • Análise de origem versus análise de legado

    Este artigo aplica-se à análise do código-fonte e não à análise herdada (binária). Para obter informações sobre como desabilitar a análise herdada, consulte Habilitar e desabilitar a análise de código binário para código gerenciado.

Projetos .NET Core, .NET Standard e .NET 5+

O Visual Studio 2022 versão 17.0.4 e posterior fornece duas caixas de seleção na página de propriedades da Análise de Código para controlar se os analisadores são executados em tempo de compilação e em tempo de design. Para desativar a análise de código em seu projeto, execute estas etapas:

  1. Clique com o botão direito do mouse no nó do projeto no Gerenciador de Soluções e selecione Propriedades.

  2. Selecione Análise de Código.

    A página de propriedades de Análise de Código abre-se.

    Captura de tela que mostra a página de propriedades da Análise de Código.

  3. Para desativar a análise de origem em tempo de compilação, em Executar na compilação, desmarque Sempre executar análise de código na compilação.

  4. Para desativar a análise de código-fonte ao vivo, em Executar na análise ao vivo, desmarque Executar análise de código ao vivo no editor enquanto digita.

Observação

A partir do Visual Studio 2022 versão 17.0.4, se você preferir o fluxo de trabalho de execução de análise de código sob demanda, poderá desabilitar a execução do analisador durante a análise ao vivo. Ou, você pode criar e acionar manualmente a análise de código uma vez em um projeto ou uma solução sob demanda. Para obter informações sobre como executar a análise de código manualmente, consulte Executar a análise de código manualmente para .NET.

Projetos do .NET Framework

Para desativar a análise do código-fonte para analisadores, adicione uma ou mais das seguintes propriedades do MSBuild ao arquivo de projeto.

Propriedade MSBuild Descrição Predefinido
RunAnalyzersDuringBuild Controla se os analisadores são executados em tempo de compilação. true
RunAnalyzersDuringLiveAnalysis Controla se os analisadores analisam o código em tempo real durante o tempo de design. true
RunAnalyzers Definir esta propriedade para false desativar os analisadores tanto em tempo de compilação como de design. Tem precedência sobre RunAnalyzersDuringBuild e RunAnalyzersDuringLiveAnalysis. true

Por exemplo:

<RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
<RunAnalyzersDuringLiveAnalysis>false</RunAnalyzersDuringLiveAnalysis>
<RunAnalyzers>false</RunAnalyzers>

Esta página permite desabilitar a análise de código no Visual Studio. Há limitações para o que você pode desabilitar, e o procedimento para desativar a análise de código difere dependendo de alguns fatores:

  • Tipo de projeto (.NET Core, .NET Standard e .NET 5+ versus .NET Framework)

    Os projetos .NET Core, .NET Standard e .NET 5+ têm opções em sua página de propriedades de Análise de Código que permitem desativar a análise de código de analisadores instalados como um pacote NuGet. Para obter mais informações, consulte Projetos .NET Core, .NET Standard e .NET 5+. Para obter informações sobre como desativar a análise de código-fonte em projetos do .NET Framework, consulte Projetos do .NET Framework.

  • Análise de origem versus análise de legado

    Este artigo aplica-se à análise do código-fonte e não à análise herdada (binária). Para obter informações sobre como desabilitar a análise herdada, consulte Habilitar e desabilitar a análise de código binário para código gerenciado.

Projetos .NET Core, .NET Standard e .NET 5+

O Visual Studio 2019 versão 16.3 e posterior fornece duas caixas de seleção na página de propriedades da Análise de Código que permite controlar se os analisadores são executados em tempo de compilação e em tempo de design. Essas opções são específicas do projeto.

Captura de tela que mostra a página de propriedades da Análise de Código.

Para abrir esta página, clique com o botão direito do mouse no nó do projeto no Gerenciador de Soluções e selecione Propriedades. Selecione a guia Análise de código .

  • Para desativar a análise de origem em tempo de compilação, desmarque a opção Executar na compilação .
  • Para desativar a análise de código-fonte ao vivo, desmarque a opção Executar na análise ao vivo .

Observação

A partir do Visual Studio 2019 versão 16.5, se você preferir o fluxo de trabalho de execução de análise de código sob demanda, poderá desabilitar a execução do analisador durante a análise ao vivo. Ou, você pode criar e acionar manualmente a análise de código uma vez em um projeto ou uma solução sob demanda. Para obter informações sobre como executar a análise de código manualmente, consulte Executar a análise de código manualmente para .NET.

Projetos do .NET Framework

Para desativar a análise do código-fonte para analisadores, adicione uma ou mais das seguintes propriedades do MSBuild ao arquivo de projeto.

Propriedade MSBuild Descrição Predefinido
RunAnalyzersDuringBuild Controla se os analisadores são executados em tempo de compilação. true
RunAnalyzersDuringLiveAnalysis Controla se os analisadores analisam o código em tempo real durante o tempo de design. true
RunAnalyzers Definir esta propriedade para false desativar os analisadores tanto em tempo de compilação como de design. Tem precedência sobre RunAnalyzersDuringBuild e RunAnalyzersDuringLiveAnalysis. true

Por exemplo:

<RunAnalyzersDuringBuild>false</RunAnalyzersDuringBuild>
<RunAnalyzersDuringLiveAnalysis>false</RunAnalyzersDuringLiveAnalysis>
<RunAnalyzers>false</RunAnalyzers>