Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Property | Värde |
---|---|
Regel-ID | CA2219 |
Title | Skapa inte undantag i undantagssatser |
Kategori | Användning |
Korrigeringen är icke-bakåtkompatibel | Icke-breaking, Breaking |
Aktiverad som standard i .NET 9 | Som förslag |
Ett undantag genereras från en finally
, filter- eller felsats.
När ett undantag utlöses i en undantagsklausul ökar det avsevärt felsökningssvårigheterna.
När ett undantag utlöses i en finally
felsats döljer det nya undantaget det aktiva undantaget, om det finns. Detta gör det ursprungliga felet svårt att identifiera och felsöka.
När ett undantag utlöses i en filtersats fångar körningen tyst undantaget och gör att filtret utvärderas till falskt. Det finns inget sätt att se skillnaden mellan filtret som utvärderas till false och ett undantag som genereras från ett filter. Detta gör det svårt att identifiera och felsöka fel i filtrets logik.
Åtgärda denna överträdelse av den här regeln genom att inte uttryckligen skapa ett undantag från en finally
, filter- eller felklausul.
Ignorera inte en varning för den här regeln. Det finns inga scenarier där ett undantag som genereras i en undantagsklausul ger en fördel för den körbara koden.
Feedback om .NET
.NET är ett öppen källkod projekt. Välj en länk för att ge feedback: