Megosztás a következőn keresztül:


CA2219: Ne emelj kivételeket a kivételkikötésekben

Tulajdonság Érték
Szabályazonosító CA2219
Cím Kivételek kizárása a kivételkikötésekben
Kategória Használat
A javítás kompatibilitástörő vagy nem törik Nem törés, törés
Alapértelmezés szerint engedélyezve a .NET 9-ben Javaslatként

Ok

A rendszer kivételt jelez egy, a finallyszűrő vagy a hiba záradékból.

Szabály leírása

Ha kivételt emelnek ki egy kivételkikötésben, az jelentősen növeli a hibakeresés nehézségét.

Ha egy vagy több finally tartalék záradékban kivétel keletkezik, az új kivétel elrejti az aktív kivételt, ha van ilyen. Ez megnehezíti az eredeti hiba észlelését és hibakeresését.

Ha egy szűrőzáradék kivételt hoz létre, a futtatókörnyezet csendesen elkapja a kivételt, és a szűrő kiértékelése hamis lesz. Nem lehet megállapítani a különbséget a hamisnak kiértékelt szűrő és a szűrőből származó kivétel között. Ez megnehezíti a szűrő logikájában előforduló hibák észlelését és hibakeresését.

Szabálysértések kijavítása

A szabály megsértésének kijavításához ne emeljen ki kivételt egy, a finallyszűrőből vagy a tartalék záradékból.

Mikor kell letiltani a figyelmeztetéseket?

Ne tiltsa le a szabályra vonatkozó figyelmeztetést. Nincsenek olyan forgatókönyvek, amelyek esetén egy kivételkikötésben felvetett kivétel előnyt biztosít a végrehajtó kód számára.

CA1065: Ne emeljen kivételeket váratlan helyeken

Lásd még