دسته بندی ها
21:45 1403/10/13

مدیریت خطا اختصاصی در سی شارپ توسط Try و Catch

مشخصات سوال کننده :
کاربر : pedram_khan     امتیاز کاربر : 277     رتبه کاربر : 6
دسته بندی : سی شارپ

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 648
پاسخ دهنده : saedbfd 23:58 1403/10/13

آشنایی با Exception های اختصاصی بلوک Catch

بله شما می تونید از طریق Exception های اختصاصی که برای بلوک Catch تعریف شده خطاهاتون رو اختصاصی مدیریت کنید. به عنوان مثال کدهای زیر رو دقت کنید :

try
{
   int age = Convert.ToInt32(textBox1.Text);
   Console.WriteLine($"You are {age} years old");
}
catch (OverflowException ex)
{
   //اگر عدد خیلی بزرگی وارد شد وارد این خطا نمایش داده می شود
   Console.WriteLine($"age is invalid");
}
catch (FormatException ex)
{
   //اگر رشته وارد شد این خطا نمایش داده می شود
   Console.WriteLine($"format is invalid");
}
catch (Exception ex) 
{
   //اگر خطای هندل نشده ای وجود داشت این خطا نمایش داده می شود
   Console.WriteLine($"there is an error");
}

 

همونطوری که ملاحظه می کنید یک بلوک try داریم و سه بلوک catch که در هر بلوک از catch یک حالت خاص از خطا بررسی شده است. بلوک catch آرگومان های زیادی برای مدیریت خطا دارد مانند :

//اگر خطای تقسیم بر صفر رخ داد
catch (DivideByZeroException ex)

//اگر مقداری خارج از محدوده آرایه ثبت یا واکشی شد
catch (IndexOutOfRangeException ex)

//و ...

 

شما حتی می تونید در بلوک catch از شرط هم استفاده کنید. برای اطلاعات بیشتر لینک زیر رو مطالعه کنید.

Try/Catch in C# (How It Works For Developers)

به این پاسخ امتیاز بدهید    1
امتیاز: 1654 رتبه: 1
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود