Bonnes pratiques pour détecter plusieurs exceptions en même temps
En C#, intercepter toutes les exceptions directement à l'aide de System.Exception
n'est généralement pas recommandé. La meilleure pratique consiste à détecter uniquement les exceptions spécifiques dont on sait qu’elles existent. Cependant, cette approche peut conduire à du code redondant lors de la gestion de plusieurs exceptions attendues.
Par exemple :
<code class="language-csharp">try { WebId = new Guid(queryString["web"]); } catch (FormatException) { WebId = Guid.Empty; } catch (OverflowException) { WebId = Guid.Empty; }</code>
Le code ci-dessus a des structures répétées. Une méthode plus concise consiste à utiliser System.Exception
pour intercepter toutes les exceptions, puis à utiliser l'instruction switch
pour distinguer le type d'exception :
<code class="language-csharp">catch (Exception ex) { switch (ex) { case FormatException: case OverflowException: WebId = Guid.Empty; break; default: throw; // 将未处理的异常重新抛出 } }</code>
Cette approche gère efficacement plusieurs exceptions connues tout en conservant la possibilité de lancer des exceptions inattendues.
N'oubliez pas que la capture System.Exception
en tant que pratique générale n'est toujours pas recommandée. N'interceptez et ne gérez que les exceptions attendues de manière appropriée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!