Udostępnij za pośrednictwem


Unikaj starszego formatu docelowego w globalnym elemecie "SuppressMessageAttribute" (IDE0077)

Własność Wartość
identyfikator reguły IDE0077
Tytuł Unikaj starszego formatu celu w globalnym SuppressMessageAttribute
Kategoria Jakość kodu
podkategorii Różne reguły
Języki mające zastosowanie C# i Visual Basic

Przegląd

Ta reguła flaguje globalnych atrybut ów SuppressMessageAttributes, które określają Target przy użyciu starszego formatu ciągu fxCop starszej wersji FxCop formatu ciągu docelowego. Korzystanie ze starszego formatu Target jest znane z problemów z wydajnością i należy go unikać. Aby uzyskać więcej informacji, zobacz dotnet/roslyn problem 44362.

Zalecanym formatem dla Target jest format identyfikatora dokumentacji . Aby uzyskać informacje na temat identyfikatorów dokumentacji, zobacz format identyfikatora dokumentacji.

Napiwek

Program Visual Studio 2019 udostępnia poprawkę kodu, aby automatycznie zmienić Target atrybutu na zalecany format.

Opcje

Ta reguła nie ma skojarzonych opcji stylu kodu.

Przykład

// 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;
    }
}

Pomijanie ostrzeżenia

Jeśli chcesz pominąć tylko jedno naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć regułę.

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

Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none w pliku konfiguracji .

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

Aby wyłączyć tę całą kategorię reguł, ustaw ważność kategorii na none w pliku konfiguracji .

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

Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia analizy kodu.

Zobacz też