Asp.Net

Global.asax Nedir?

Bu yazımızda ASP.net tarafından üretilen uygulama ve oturum bazlı Global.asax dosyasından bahsedeceğiz. Server bazlı global.asax dosyası kullanılması zorunlu olmayan bir dosyadır fakat gerek güvenlik gerekse bize dinamik bir yapı sağlaması için bu yapıyı kullanıyoruz. Sitelerimizde bulunan online kişi sayısını bu sayede az kodla yapabiliriz. Bunun örneğini daha sonraki makalemizde vereceğiz.

Şimdi gelelim Global.asax dosyasının içerinden bahsetmeye. Öncelikle projemizi Empty web projesi olarak açıp sonra da Global Application Class seçeneğini tıklayarak projemize ekliyoruz. Eğer projemizi Empty olarak açmadıysanız Global.asax dosyası default olarak projenize eklenecektir. Bu yüzden projenizi empty olarak açmalısınız.
Projemize global.asax dosyasını eklediğinizde karşınıza belli içi boş metodlar gelecektir. Şimdi sırayla bu metotlardan bahsedelim.

protected void Application_Start(object sender, EventArgs e)
{
}

Adından da anlaşıldığı üzere uygulama ilk başlatıldığı anda çağrılır. IIS in başlamasından sonra kullanıcıya gelen ilk istekte gelir. Data akışını takip için oldukça uygun bir eventtir. Bu event uygulama kapanıncaya kadar çalışır.

protected void Session_Start(object sender, EventArgs e)
{
}

Sitemizde bulunan herhangi bir sayfayı kullanıcı ziyaret ettiğinde bu event çağrılır. Sayfaya ilk istek yapıldığında çağrılır ve daha sonra çağrılmaz. Fakat sessionun timeout süresi dolmuşsa ve kullanıcı bu süreden sonra tekrar bir istekte bulunursa bunu yeni kullanıcı diye algılayıp bu event tekrar tetiklenir. Siteyi ziyaret eden kullanıcı ilk ziyareti sırasında yazılacak fonksiyonlar burada bulunur. Örnek verecek olursak online kullanıcı sayısı gibi.

protected void Application_BeginRequest(object sender, EventArgs e)
{
}

Arkadaşlar bir çok event adından da anlaşıldığı gibi bir sayfadan istek çağrıldığında tetiklenen event budur.

protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
}

Bir FormsAuthentication kullanılması durumunda kullanıcı sisteme başarılı bir şekilde giriş yaptığında tetiklenen eventtir. Yani sitelerimizde bulunan Giriş Yap(Login) kısmına başarılı bir şekilde giriş yaptıysa kullanıcı herhangi bir sayfaya yönlendirilebilir, rol atanabilir veya bilgisayarına cookie bırakılabilir.

protected void Application_Error(object sender, EventArgs e)
{
}

Uygulamanın çalışırken hataları görebileceğimiz bir alandır. Uygulamanın çalışması esnasında bir hata olması durumunda çalışan event tır.

protected void Session_End(object sender, EventArgs e)
{
}

Kullanıcının çıkış yapması durumunda bu event tetiklenir ve bir çok fonksiyonla ilgili işlem burada yapılabilir. Online kullanıcının siteden çıkması vb. örnek verebiliriz.

protected void Application_End(object sender, EventArgs e)
{
}

Bu event uygulama sona erdiğinde çalışır. Application_Start ta tanımladığımız fonksiyonları burada sonlandırabiliriz.

Gördüğünüz gibi ASP.net in bize oldukça kolaylık sağladığı bir dosyayı ele aldık. Böylelikle uygulama bazlı işlemlerde bize ne gibi kolaylıklar yapabileceğini gördük. Bu sayede sitelerinizi daha güvenli ve dinamik bir yapı şeklinde oluşturmanız sizin iyi bir yazılımcı olduğunuzu gösterecektir. Tabi ki sadece bunu yapmakla iyi bir yazılımcı olmuyorsunuz 🙂

hakkımdaki her şeyi bu blogda bulabilirsin. Haydi sende bir göz gezdirmeye ne dersin?

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir