1.5 KiB
1.5 KiB
title | localeTitle |
---|---|
Exceptions | استثناءات |
استثناءات
الاستثناء هو خطأ غير متوقع يحدث أثناء تشغيل أحد البرامج ، مثل محاولة الوصول إلى ملف غير موجود. سيوقف البرنامج إذا لم يتم التعامل معه.
مثال
إذا حاولنا قراءة نص ملف غير موجود:
`using System.IO;
string content = File.ReadAllText(@"C:\DoesNotExist.txt"); `
سيتم رفع FileNotFoundException
.
بعض الاستثناءات الشائعة الأخرى:
IndexOutofRangeException
: محاولة الوصول إلى صفيف مع فهرس غير صالح.NullReferenceException
: جرت محاولة استخدام متغير مرجع غير مخصص.DivideByZeroException
:DivideByZeroException
محاولة القسمة على 0.
أفضل الممارسات
استخدم المحاولة / catch / النهاية
try { var client = new WebClient(); var resultData = client.DownloadString("http://github.com"); } catch (Exception ex) { //code for handling exceptions } finally { //this code is always executed, does not matter if an exception is thrown or not }
التعامل مع استثناءات محتملة مع الشروط
بدلا من
try { conn.Close(); } catch (Exception ex) { //code for handling exceptions. }
جرب هذا
if (conn.State != ConnectionState.Closed) { conn.Close(); }