PDA

View Full Version : آموزش: آیا {}try و {}catch در #C دقیقاً مثل on error resume next عمل می کند!



mohammadriano
شنبه 24 تیر 1391, 20:18 عصر
سلام
لطفاً به این کدها نگاه کنید

private void button1_Click(object sender, EventArgs e)
{
try
{
label1.Text = (int.Parse(textBox1.Text) + int.Parse(textBox2.Text)).ToString();
} //end try
catch {
MessageBox.Show("دوباره امتحان کنید");
}
}

آیا {}try و {}catch در #C دقیقاً مثل on error resume next عمل می کند!
همین

fjm11100
شنبه 24 تیر 1391, 20:38 عصر
کدی که توی Try میزاری اگر به خطایی بخوره برنامه به قسمت Catch میره و کدی که اون تو هست را اجرا میکنه. میتونی خطا را هم در قالب یک شی Exception داشته باشی.

mohammadriano
شنبه 24 تیر 1391, 21:00 عصر
کدی که توی Try میزاری اگر به خطایی بخوره برنامه به قسمت Catch میره و کدی که اون تو هست را اجرا میکنه. میتونی خطا را هم در قالب یک شی Exception داشته باشی.
خیلی ممنون
شما یک بانک اطلاعاتی رو که در برنامه خودتون استفاده کردید رو در نظر بگیرید
خب در بعضی مواقع مشکلات و ارورها و باگ های مربوط به خودش رو داره
آیا کتابخانه دادنت فرام ورک در مورد کار با بانک اطلاعاتی هم کدهایی رو اتخاذ کرده؟
مثال در مورد اعداد :

catch(overflowException oEx){
MessageBox.Show(oEx.Message);
}

در مورد کار با بانک اطلاعاتی ؟

fjm11100
شنبه 24 تیر 1391, 22:50 عصر
بله داره ولی خب خیلی هاش را باید از پیام خطا بفهمی یعنی مثلا دنبال یک کلمه کلیدی از اون جمله خطا باشی مثلا کلمه Duplicated در خطای کلید اصلی تکراری موقع Insert کردن

Mahmoud.Afrad
شنبه 24 تیر 1391, 23:18 عصر
برای مدیریت خطای مربوط به دیتابیس میتونید از شئ SqlException استفاده کنید
catch (SqlException se)
{
MessageBox.Show(se.ToString());
}