Usuń nieprawidłowy globalny atrybut "SuppressMessageAttribute" (IDE0076)
Własność | Wartość |
---|---|
identyfikator reguły | IDE0076 |
Tytuł | Usuń nieprawidłowe globalne SuppressMessageAttribute |
Kategoria | Jakość kodu |
w podkategorii | Różne reguły |
odpowiednie języki | C# i Visual Basic |
Przegląd
Ta reguła flaguje globalne atrybuty SuppressMessageAttributes , które mają nieprawidłowe Scope
lub Target
. Atrybut powinien zostać usunięty lub naprawiony, aby odwoływać się do prawidłowego zakresu i symbolu docelowego.
Opcje
Ta reguła nie ma skojarzonych opcji stylu kodu.
Przykład
// IDE0076: Invalid target '~F:N.C.F2' - no matching field named 'F2'
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "~F:N.C.F2")]
// IDE0076: Invalid scope 'property'
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "property", Target = "~P:N.C.P")]
// Fixed code
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "~F:N.C.F")]
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Category", "Id: Title", Scope = "member", Target = "~P:N.C.P")]
namespace N
{
class C
{
public int F;
public int P { get; }
}
}
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 IDE0076
// The code that's violating the rule is on this line.
#pragma warning restore IDE0076
Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none
w pliku konfiguracji .
[*.{cs,vb}]
dotnet_diagnostic.IDE0076.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.