Удаление неиспользуемых закрытых членов (IDE0051)

Свойство Значение
Идентификатор правила IDE0051
Title Удаление неиспользуемых закрытых членов
Категория Качество кода
Подкатегория Ненужные правила кода (настройки уровня выражений)
Применимые языки 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

Дополнительные сведения см. в разделе Практическое руководство. Скрытие предупреждений анализа кода.

См. также раздел