Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
| Mülk | Değer |
|---|---|
| Kural Kimliği | IDE0072 |
| Başlık | Eksik durumları switch ifadesine ekle |
| Kategori | Üslup |
| Alt Kategori | Dil kuralları (ifade düzeyi tercihleri) |
| Geçerli diller | C# 8.0+ |
Genel bakış
Bu kural, biranahtar ifadesi için tüm eksik servis taleplerinin belirtilmesiyle ilgilidir. Aşağıdaki senaryolarda bir anahtar ifade eksik vakalar içeriyorsa tamamlanmamış olarak kabul edilir.
- Bir sabit listesi anahtar deyimi, bir veya daha fazla sabit listesi üyesi için eksik durumlar içeren ifadeler içerdiğinde.
- Düşme olayı
_eksik olduğunda.
Seçenekler
Bu kuralın ilişkili kod stili seçeneği yoktur.
Örnek
enum E
{
A,
B
}
class C
{
// Code with violations
int M(E e)
{
// IDE0072: Add missing cases
return e switch
{
E.A => 0,
_ => -1,
};
}
// Fixed code
int M(E e)
{
return e switch
{
E.A => 0,
E.B => 1,
_ => -1,
};
}
}
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 IDE0072
// The code that's violating the rule is on this line.
#pragma warning restore IDE0072
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.IDE0072.severity = none
Tüm kod stili kurallarını devre dışı bırakmak için kategori Style önem derecesini yapılandırma dosyasında none olarak ayarlayın.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Daha fazla bilgi için bkz. Kod analizi uyarılarını gizleme.