PDA

View Full Version : آموزش: Application_Error



fakhravari
پنج شنبه 26 بهمن 1391, 14:49 عصر
دریافت خطاهای وب سایت.
Global.asax
protected void Application_Error(object sender, EventArgs e)
{
Exception objErr = Server.GetLastError().GetBaseException();
string err = "Adress Error : " + Request.Url.ToString() +
"\n Type Message Error : " + objErr.Message.ToString() +
"\n Stack Trace : " + objErr.StackTrace.ToString();
}
چند خطا
string ff ="111111111111111111111111111111111111111111";
int a = int.Parse(ff);
return (int.Parse("1") / int.Parse("0"));
---------------------------------------------------------
Request.Url.ToString() = آدرس صفحه خطا
objErr.Message.ToString() = نوع خطا
objErr.StackTrace.ToString() = شماره خط تولید خطا

bitcob589
جمعه 27 بهمن 1391, 00:49 صبح
برای دریافت خطا ی کد در catch نیاز به کد نویسی است
آیا برای دریافت خطاهای سایت کدی که Application_Error نوشته شده است کافی است

fakhravari
جمعه 27 بهمن 1391, 00:54 صبح
اگر در catch به این صورت استفاده کنیم catch {} دیگر خطایی در Application_Error ایجاد نمیشود
Application_Error هر گونه خطایی که در سرور ایجاد میشه پوشش میده.

bitcob589
جمعه 27 بهمن 1391, 01:01 صبح
چگونه خطا های رخ داده شده ذخیره شود (آیا خطا ها را در دیتابیس ذخیره کنیم و یا خطا ها به شیوه دیگری ذخیره کنیم)

fakhravari
جمعه 27 بهمن 1391, 02:25 صبح
روش دیگه با خودتون.
ایمیل
فایل XML
دیتابیس
---------------------
در کلاس تابع مورد نظر درست کنید و در رویداد Application_Error مقادیر بدینش.
Request.Url.ToString()
objErr.Message.ToString()
objErr.StackTrace.ToString()

فراخونی در Application_Error
public static void InsertEroor(string Adress, string Type, string Stack)
{

}

dorparasti
جمعه 27 بهمن 1391, 16:58 عصر
می تونید به جای اینکار از کتابخانه ELMAH برای مدیریت خطاهای وب سایت استفاده کنید . اضافه کردن اون به سایت بسیار ساده است و به صورت توکار امکان ذخیره خطاها به صورت های مختلف ( دیتابیس ، آر اس اس ، ارسال به ایمیل ، ... ) رو داره . برای شروع می تونید این وب سایت (http://www.dotnettips.info/search?term=ELMAH) رو چک کنید .

fakhravari
جمعه 27 بهمن 1391, 18:45 عصر
اقای زاءری من سایت دیدم اما تمام لینک ها خراب شده بودن.
اگر ممکن برنامه همراه با یک مثال بزارید.