Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menangkap Pelbagai Pengecualian dengan Cekap dalam C#?
Tangkap berbilang pengecualian pada masa yang sama
Apabila mengendalikan berbilang pengecualian yang diketahui dalam kod C#, ia boleh membosankan untuk menangkap dan mengendalikan setiap pengecualian secara individu. Contohnya, dalam senario yang disediakan:
<code class="language-csharp">try { WebId = new Guid(queryString["web"]); } catch (FormatException) { WebId = Guid.Empty; } catch (OverflowException) { WebId = Guid.Empty; }</code>
Untuk memudahkan proses ini, pertimbangkan untuk menggunakan blok tangkapan tunggal yang mengandungi semua kemungkinan pengecualian dan gunakan pernyataan suis untuk membezakan antara mereka:
<code class="language-csharp">catch (Exception ex) { if (ex is FormatException || ex is OverflowException) { WebId = Guid.Empty; } else { throw; } }</code>
Dalam kes ini, sebarang FormatException atau OverflowException yang dilemparkan akan dikendalikan dengan menetapkan WebId kepada Guid.Empty, manakala semua pengecualian lain akan dibenarkan untuk disebarkan. Pendekatan ini memudahkan kod sambil mengekalkan kawalan ke atas pengendalian pengecualian yang dijangkakan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menangkap Pelbagai Pengecualian dengan Cekap dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!