Не используйте устаревший формат для целевого объекта в глобальном атрибуте "SuppressMessageAttribute" (IDE0077)
Свойство | Значение |
---|---|
Идентификатор правила | IDE0077 |
Title | Не используйте устаревший формат для целевого объекта в глобальном атрибуте SuppressMessageAttribute |
Категория | Качество кода |
Подкатегория | Прочие правила |
Применимые языки | C# и Visual Basic |
Обзор
Это правило помечает глобальные атрибуты SuppressMessageAttributes, которые указывают Target
, используя устаревший формат строки целевого объекта FxCop. Использование устаревшего формата Target
, как известно, имеет проблемы с производительностью, и их следует избегать. Дополнительные сведения см. в проблеме dotnet/roslyn 44362.
Рекомендуется использовать для Target
формат ИД документации. См. сведения о формате ИД документации.
Совет
Visual Studio 2019 поддерживает исправление кода для автоматической смены Target
атрибута на рекомендуемый формат.
Варианты
Это правило не имеет связанных параметров стиля кода.
Пример
// IDE0077: Legacy format target 'N.C.#F'
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "N.C.#F")]
// Fixed code
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "~F:N.C.F")]
namespace N
{
class C
{
public int F;
}
}
Отключение предупреждений
Если вы хотите подавить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и снова включить правило.
#pragma warning disable IDE0077
// The code that's violating the rule is on this line.
#pragma warning restore IDE0077
Чтобы отключить правило для файла, папки или проекта, задайте для его серьезности none
значение в файле конфигурации.
[*.{cs,vb}]
dotnet_diagnostic.IDE0077.severity = none
Чтобы отключить всю эту категорию правил, задайте для категории none
значение серьезности в файле конфигурации.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none
Дополнительные сведения см. в разделе Практическое руководство. Скрытие предупреждений анализа кода.