0
09216680927

مدیریت خطاها در سی شارپ

مدیریت خطاها در سی شارپ

مقدمه

سلام خدمت شما عزیزان سایت آموزش برنامه نویسی نونویسان در این مقاله میخواهم مدیریت خطاها در سی شارپ را بهتون یاد بدهم فرض کنید کاربر از روی نا آگاهی اشتباهی میکند این وظیفه برنامه نویس است که یک خطا به کاربر نمایش دهد و کاربر را به جای درست هدایت کند پس تا آخر مقاله همراه من باشید

اگر به تازگی قصد یادگیری سی شارپ را دارید وارد مقاله دیتا تایپ ها در سی شارپ شوید

مدیریت خطا ها در سی شارپ

فرض کنید که میخواهید یک ماشین حساب درست کنید نیاز است که از کاربر دو مقدار دریافت کنید تا عملیات ریاضی را روی آن انجام دهید پس دو متغیر از نوع integer ایجاد میکنید دقیقا مثل کد پایین

				
					public class Program
    {
        static void Main(string[] args)
        {
            int Number1 = 0;
            int Number2 = 0;

            Console.WriteLine("Please Enter Number 1");
            Number1 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Please Enter Number 2");
            Number2 = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Sum Is: " + (Number1 + Number2));

            Console.ReadKey();
        }
    }
				
			

دو متغیر به اسم Number1 و Number2 ایجاد کردیم برای اینکه مشکلی هم ایجاد نشود مقدار دادیم و بعد از کاربر دریافت کردیم تا اینکه مقادیر را جمع کردیم حالا اگر کاربر در یکی از این مقادیر عدد وارد نکند و یک نام وارد کند چه رخ میدهد

نمایش خطا در سی شارپ

در این خطا نوشته شده که فرمت وارد شده درست نیست و علت نمایش خطا این است که کاربر فقط باید عدد وارد کند ولی الان یک نام وارد کرده بخاطر اینکه شخصی که دارد از برنامه ما استفاده میکند و ممکن است برنامه نویس نباشد و از خطا چیزی متوجه نمیشد مدیریت خطاها در سی شارپ به کمک ما می آید که توسط دستور try و catch انجام میشود کد بالا را باید کمی تغییر دهیم

				
					public class Program
    {
        static void Main(string[] args)
        {
            int Number1 = 0;
            int Number2 = 0;

            try
            {
                Console.WriteLine("Please Enter Number 1");
                Number1 = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Please Enter Number 2");
                Number2 = Convert.ToInt32(Console.ReadLine());
            }
            catch (Exception)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Please Enter Just Number");
                Console.ResetColor();
            }
            finally
            {
                Console.WriteLine("Sum Is: " + (Number1 + Number2));
            }
            Console.ReadKey();
        }
    }
				
			

کدی که خطا تولید میکرد متغیر ها بودند که به صورت ورودی از کاربر دریافت میشدند پس آنها را در بدنه try قرار میدهیم و حالا اگر دستوراتی که در try هستند خطا تولید کنند catch اجرا میشود در اینجا نوشته ایم که اگر کاربر خطا تولید کرد اول براش متن خطا را قرمز کن و بعد بنویس که لطفا فقط عدد وارد کنید و بعد رنگ قرمز را از بین ببر این بخاطر این است که فقط ارور قرمز شود حالا نوبت بخش سوم یعنی finally میشویم این کد در هر صورت اجرا میشود چه کد خطا بدهد چه خطایی تولید نشود ما در finally نوشتیم که اگر خطا تولید شد یا نشد به هرحال جمع Number1 و Number2 را نمایش بده

حل خطا با try,catch در سی شارپ

کدی که داخل Finaly باشد به هرحال اجرا میشود پس ما مقدار جمع جود عدد را در finaly نمایش میدهیم تصویر بالا را به دقت مشاهده کنید کاربر عدد اول را 12 وارد کرده و در عدد دوم نام خود را نوشته اما بخاطر مدیریت ما با try, catch خطا مدیریت شد و به کاربر نمایش داده شد که لطفا فقط عدد وارد کنید و چون یکی از مقادیر درست پر شد و دیگری خطا داشت 12 را با هیچ عددی جمع نکرد و خودش را نمایش داد.

این بود مدیریت خطاها در سی شارپ اگر سوالی داشتید در بخش کامنت و یا تماس با ما مطرح کنید

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *