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 Targetgenel 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.

Ayrıca bkz.