Geçersiz genel 'SuppressMessageAttribute' kaldır (IDE0076)
Özellik | Değer |
---|---|
Kural Kimliği | IDE0076 |
Başlık | Geçersiz geneli kaldır SuppressMessageAttribute |
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'e bayrak ekler. Özniteliğin geçerli bir kapsama ve hedef simgesine başvurmak için kaldırılması veya düzeltilmesi gerekir.
Seçenekler
Bu kuralın ilişkili kod stili seçeneği yok.
Ö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 öniş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, yapılandırma dosyasındaki önem derecesini none
olarak ayarlayın.
[*.{cs,vb}]
dotnet_diagnostic.IDE0076.severity = none
Bu kural kategorisinin tamamını devre dışı bırakmak için none
, kategorinin önem derecesini yapılandırma dosyasında olarak ayarlayın.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none
Daha fazla bilgi için bkz. Kod analizi uyarılarını gizleme.