使用されていない非公開メンバーを削除する (IDE0051)

プロパティ
ルール ID IDE0051
Title 使用されていない非公開メンバーを削除する
カテゴリ CodeQuality
Subcategory 不要なコード規則 (式レベルの基本設定)
該当言語 C# および Visual Basic

概要

この規則は、読み取りまたは書き込み参照を持たない、使用されていない非公開のメソッド、フィールド、プロパティ、およびイベントにフラグを設定します。

オプション

この規則には、関連付けられているコード スタイル オプションはありません。

// Code with violations
class C
{
    // IDE0051: Remove unused private members
    private readonly int _fieldPrivate;
    private int PropertyPrivate => 1;
    private int GetNumPrivate() => 1;

    // No IDE0051
    internal readonly int FieldInternal;
    private readonly int _fieldPrivateUsed;
    public int PropertyPublic => _fieldPrivateUsed;
    private int GetNumPrivateUsed() => 1;
    internal int GetNumInternal() => GetNumPrivateUsed();
    public int GetNumPublic() => GetNumPrivateUsed();
}

// Fixed code
class C
{
    // No IDE0051
    internal readonly int FieldInternal;
    private readonly int _fieldPrivateUsed;
    public int PropertyPublic => _fieldPrivateUsed;
    private int GetNumPrivateUsed() => 1;
    internal int GetNumInternal() => GetNumPrivateUsed();
    public int GetNumPublic() => GetNumPrivateUsed();
}

警告を抑制する

単一の違反だけを抑制する場合は、ソース ファイルにプリプロセッサ ディレクティブを追加して無効にしてから、規則を再度有効にします。

#pragma warning disable IDE0051
// The code that's violating the rule is on this line.
#pragma warning restore IDE0051

ファイル、フォルダー、またはプロジェクトのルールを無効にするには、構成ファイルでその重要度を none に設定します。

[*.{cs,vb}]
dotnet_diagnostic.IDE0051.severity = none

規則のこのカテゴリ全体を無効にするには、構成ファイルでカテゴリの重要度を none に設定します。

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none

詳細については、「コード分析の警告を抑制する方法」を参照してください。

関連項目