Genel 'SuppressMessageAttribute' (IDE0077) içinde eski biçim hedefinden kaçının
Özellik | Değer |
---|---|
Kural Kimliği | IDE0077 |
Başlık | Genel olarak eski biçim hedefinden kaçının SuppressMessageAttribute |
Kategori | CodeQuality |
Alt Kategori | Çeşitli kurallar |
Geçerli diller | C# ve Visual Basic |
Genel Bakış
Bu kural, eski FxCop hedef dize biçimini kullanarak belirten Target
genel SuppressMessageAttributes'i işaretlemektedir. Eski biçimin Target
kullanılması performans sorunlarına yol açabilir ve bundan kaçınılmalıdır. Daha fazla bilgi için bkz. dotnet/roslyn sorunu 44362.
için Target
önerilen biçim , belge kimliği biçimidir. Belge kimlikleri hakkında bilgi için bkz . Belge Kimliği biçimi.
İpucu
Visual Studio 2019, özniteliğin otomatik olarak önerilen biçimle değiştirilmesine Target
yönelik bir kod düzeltmesi sağlar.
Seçenekler
Bu kuralın ilişkili kod stili seçeneği yok.
Örnek
// 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;
}
}
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 IDE0077
// The code that's violating the rule is on this line.
#pragma warning restore IDE0077
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.IDE0077.severity = none
Bu kural kategorisinin tamamını devre dışı bırakmak için, yapılandırma dosyasında kategorinin none
önem derecesini olarak ayarlayın.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-CodeQuality.severity = none
Daha fazla bilgi için bkz. Kod analizi uyarılarını gizleme.