.NET のソース コード分析を無効にする

Visual Studio では、ビルド時とデザイン時にソース コード アナライザーを実行するかどうかを制御できます。 無効にできるものには制限があり、コード分析を無効にする手順はいくつかの要素によって異なります。

  • プロジェクト タイプ (.NET Core、.NET Standard、および NET 5+ versus .NET Framework)

    .NET Core、.NET Standard、および .NET 5+ プロジェクトの [コード分析] のプロパティ ページには、NuGet パッケージとしてインストールされたアナライザーのコード分析を無効にできるオプションがあります。 詳細については、「.NET Core、.NET Standard および NET 5+ プロジェクト」を参照してください。 これに対し、.NET Framework プロジェクトでは、プロジェクト ファイルでプロパティを設定する必要があります。 .NET Framework プロジェクトのソース コード分析を無効にするには、「.NET Framework プロジェクト」を参照してください。

  • ソース分析とレガシ分析

    この記事は、レガシ (バイナリ) 分析ではなく、ソース コード分析に適用されます。 レガシ分析を無効にする方法については、「マネージド コードのバイナリ コード分析を有効または無効にする」を参照してください。

.NET Core、.NET Standard、および .NET 5+ プロジェクト

Visual Studio 2022 バージョン 17.0.4 以降では、[コード分析] のプロパティ ページに、ビルド時およびデザイン時にアナライザーを実行するかどうかを制御するための 2 つのチェックボックスが提供されています。 プロジェクト内のコード分析を無効にするには、次の手順に従います。

  1. [ソリューション エクスプローラー] で、プロジェクト ノードを右クリックしてから [プロパティ] を選択します。

  2. [コード分析] を選択します。

    [コード分析] のプロパティ ページが開きます。

    Code Analysis の[プロパティ] ページを示すスクリーンショット。

  3. ビルド時にソース分析を無効にするには、[ビルド時に実行] で、[ビルド時に常にコード分析を実行する] をオフにします。

  4. ライブ ソース分析を無効にするには、[ライブ分析時に実行] で、[入力時にエディターでコード分析をライブ実行] をオフにします。

Note

Visual Studio 2022 バージョン 17.0.4 以降では、オンデマンドのコード分析実行ワークフローの方が望ましい場合は、ライブ分析中にアナライザーの実行を無効にすることができます。 または、プロジェクトやソリューションに対してオンデマンドで、コード分析をビルドして手動で 1 回トリガーできます。 コード分析を手動で実行する方法については、「.NET Code Analysis を手動で実行する」を参照してください。

.NET Framework プロジェクト

アナライザーのソース コード分析を無効にするには、プロジェクト ファイルに次の MSBuild プロパティを 1 つ以上追加します。

MSBuild のプロパティ 説明 Default
RunAnalyzersDuringBuild アナライザーをビルド時に実行するかどうかを制御します。 true
RunAnalyzersDuringLiveAnalysis アナライザーでデザイン時にコードをライブ分析するかどうかを制御します。 true
RunAnalyzers このプロパティ を false へ設定することで、ビルド時とデザイン時の両方でアナライザーを無効にします。 RunAnalyzersDuringBuild および RunAnalyzersDuringLiveAnalysis よりも優先されます。 true

次に例を示します。

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

このページを利用して、Visual Studio でコード分析を無効にできます。 無効にできるものには制限があり、コード分析を無効にする手順はいくつかの要素によって異なります。

  • プロジェクト タイプ (.NET Core、.NET Standard、および NET 5+ versus .NET Framework)

    .NET Core、.NET Standard、および .NET 5+ プロジェクトの [コード分析] のプロパティ ページには、NuGet パッケージとしてインストールされたアナライザーのコード分析を無効にできるオプションがあります。 詳細については、「.NET Core、.NET Standard および NET 5+ プロジェクト」を参照してください。 .NET Framework プロジェクトのソース コード分析を無効にする方法については、「.NET Framework プロジェクト」を参照してください。

  • ソース分析とレガシ分析

    この記事は、レガシ (バイナリ) 分析ではなく、ソース コード分析に適用されます。 レガシ分析を無効にする方法については、「マネージド コードのバイナリ コード分析を有効または無効にする」を参照してください。

.NET Core、.NET Standard、および .NET 5+ プロジェクト

Visual Studio 2019 バージョン 16.3 以降では、[コード分析] のプロパティ ページに、ビルド時およびデザイン時にアナライザーを実行するかどうかを制御できる 2 つのチェックボックスが提供されています。 これらのオプションはプロジェクト固有です。

Code Analysis の[プロパティ] ページを示すスクリーンショット。

このページを開くには、ソリューション エクスプローラーでプロジェクト ノードを右クリックし、[プロパティ] を選択します。 [コード分析] タブを選択します。

  • ビルド時のソース分析を無効にするには、[ビルド時に実行] オプションをオフにします。
  • ライブ ソース分析を無効にするには、[ライブ分析時に実行] オプションをオフにします。

Note

Visual Studio 2019 バージョン 16.5 以降では、オンデマンドのコード分析実行ワークフローの方が望ましい場合は、ライブ分析中にアナライザーの実行を無効にすることができます。 または、プロジェクトやソリューションに対してオンデマンドで、コード分析をビルドして手動で 1 回トリガーできます。 コード分析を手動で実行する方法については、「.NET Code Analysis を手動で実行する」を参照してください。

.NET Framework プロジェクト

アナライザーのソース コード分析を無効にするには、プロジェクト ファイルに次の MSBuild プロパティを 1 つ以上追加します。

MSBuild のプロパティ 説明 Default
RunAnalyzersDuringBuild アナライザーをビルド時に実行するかどうかを制御します。 true
RunAnalyzersDuringLiveAnalysis アナライザーでデザイン時にコードをライブ分析するかどうかを制御します。 true
RunAnalyzers このプロパティ を false へ設定することで、ビルド時とデザイン時の両方でアナライザーを無効にします。 RunAnalyzersDuringBuild および RunAnalyzersDuringLiveAnalysis よりも優先されます。 true

次に例を示します。

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