Geçersiz genel 'SuppressMessageAttribute' öğesini kaldırın (IDE0076)
Mülk | Değer |
---|---|
Kural Kimliği | IDE0076 |
Başlık | Geçersiz genel SuppressMessageAttribute kaldır |
Kategori | CodeQuality |
Alt Kategori | Çeşitli kurallar |
Geçerli diller | C# ve Visual Basic |
Genel bakış
Bu kural, geçersiz Scope
veya Target
olan genel SuppressMessageAttributes işaretler. Özniteliğin geçerli bir kapsam ve hedef simgesine başvurmak için kaldırılması veya sabitlenmesi gerekir.
Seçenekler
Bu kuralın ilişkili kod stili seçeneği yoktur.
Örnek
// 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; }
}
}
Uyarıyı gizleme
Yalnızca tek bir ihlali engellemek istiyorsanız, kuralı devre dışı bırakmak ve sonra yeniden etkinleştirmek için kaynak dosyanıza ön işlemci yönergeleri ekleyin.
#pragma warning disable IDE0076
// The code that's violating the rule is on this line.
#pragma warning restore IDE0076
Bir dosya, klasör veya projenin kuralını devre dışı bırakmak için önem derecesini yapılandırma dosyasında none
olarak ayarlayın.
[*.{cs,vb}]
dotnet_diagnostic.IDE0076.severity = none
Bu kural kategorisinin tamamını devre dışı bırakmak için, kategorinin önem derecesini yapılandırma dosyasında none
olarak ayarlayın.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none
Daha fazla bilgi için bkz. Kod analizi uyarılarını gizleme.