Asp.net Hata Yönetimi – Global.asax

Asp.net Hata Yönetimi – Global.asax

Asp.net ile yaptığınız sitede herhangi bir hata olduğunda, hata kaynağını ve bilgilerini alabilir ve hata olduğunu belirten bir sayfaya yönlendirebilirsiniz ;
Hata yönetimi global.asax dosyası ile yapılabilir. Projeye global.asax dosyası ekledikten sonra “Application_Error” alanına örnekteki gibi bir kod yazılabilir;
//
//
//
void Application_Error(object sender, EventArgs e) //sitede bir hata olduğunda çalışır.
    {
        Exception ex = Server.GetLastError().GetBaseException(); //Son hatayı aldık
        string err = ex.Message;//Hatayı string bir değere atadık
        MailGonder(err);//Hatayı querystring,ResponseWrite(err) yöntemi yada session ile alıp sayfaya yazabilir veya kendinize mail gönderebilirsiniz
        Server.ClearError();//Bilgilerini aldığımız hatayı temizledik
        Response.Redirect("http://siteadi.com/Hata/error.html", false); //Kullanıcıyı hata olduğunu belirten bir sayfaya veya anasayfaya yönlendirebiliriz
}
//
//
//
Server.GetLastError().GetBaseException() ile hata mesajı yanında aşağıdaki bilgileride alabilirsiniz;
//
//
//
Exception ex = Server.GetLastError().GetBaseException();
string err = ex.Message; // Hatanın nedeni - hata mesajı
string err = ex.StackTrace; // Hatanın oluştuğu sayfanın konum bilgisi

 //Hatanın oluştuğu sayfaya gönderilen querystringler
for (int i = 0; i < Request.QueryString.Count; i++)
{
            string err +=  Request.QueryString.Keys[i] + " - " + Request.QueryString[i] + "<br />"; //Querystring keys ve değerleri
}

//Hatanın oluştuğu sayfaya gönderilen Form verileri
for (int i = 0; i < Request.Form.Count; i++)
{
            string err += Request.Form.Keys[i] + " - " + Request.Form[i] + "<br />";
}

//Sunucudan alınan bilgiler
for (int i = 0; i < Request.ServerVariables.Count; i++)
{
            string err += Request.ServerVariables.Keys[i] + " - " + Request.ServerVariables[i] + "<br />";
}
//
//
//

Yorumlar

Bu blogdaki popüler yayınlar

Asp.Net ile Mernisten veri Çekme

Web Servis, WCF Ve Web Api Nedir? Kullanım Alanları Ve Aralarındaki Farklar Nelerdir?