Posted under ASP
ASP.NET ile programlama yaparken Web Formlarını kullanırız, web formları iki bileşenden oluşurlar, görsel kısım ve kod kısmı. Görsel kısmı .aspx dosyaları teşkil eder ve içlerinde HTML elemanlarını ve Web Form kontrollerini barındırır. Kod kısmı ise ayrı bir dosyada bulunabilceği gibi .aspx dosyamızın içinde de yeralabilir.
Page Sınıfı
Web Formlarını (.aspx sayfalarını ) ve kodlarını ayrı ayrı yazsak bile aslında bunun ikisi tek bir birim olarak ele alınırlar. Web Form’ları .NET Framework’u tarafından derlendikten sonra tek bir sınıf olarak ortaya çıkarlar. Ortaya çıkan yeni sınıfımız ASP.NET’in Page sınfından türetilmiş bir sınıf olup ek olarak içinde sizin kodlarınız, Web form kontrolleri ve statik HTML kodları yeralır.
Page sınfından türetilen sınıfımız (.aspx sayfamız) Web sunucusundan her istendiğinde çalıştırılabilir dosya olmuştur. .aspx sayfamız çalışırken kendine gelen istekleri işleyip kullanıcının tarayıcısına dinamik olarak sonuçları HTML formatında gönderir.
Klasik ASP geliştiricilerine bu model biraz değişik gelecektir. Çünkü ASP’de sayfalar statik HTML ve bunların içlerine serpiştirilmiş script kodlarından oluşurdu. asp.dll dosyası HTML’in içindeki script kodlarını yorumlar içine gerekli eklentileri statik HTML’in içine ekleyip kullanıcının tarayıcısına yollardı. O zaman klasik ASP modeli statik HTML sayfasına bir kısım eklentiler yapardı sonucuna ulaşabiliriz.
Diğer taraftan ASP.NET ile Page sınıfından türemiş olan Web Formumuz tam olarak çalıştırılabilinen ve HTML sonuçlar üreten program olarak karşımıza çıkar. Çalıştırılırken de birçok aşamadan geçer, initialize, process, ve dispose gibi. Bu aşamaları ileride ayrıntıları ile ele alacağız.
Web Formlarının Web Sunucusunda çalışma şekli normal bir web sayfası veya herhangi bir web programlama modeline çok benzer. Önce sayfa ,web sunucusundan istenir. Sunucu sayfayı bulur ve eğer sayfa dinamik sayfa ise (asp, php, jsp veya aspx gibi) gerekli işleri dinamik içerik oluşturmadan sorumlu bileşen yapar ve kulanıcının tarayıcısına yollanır. Fakat ASP.NET’te .NET Framework birçok işi sizin yerinize yapar. Mesela kullanıcının tarayıcısına göre -o tarayıcıya en uygun- sonuç üretilir ve Web Sunucusuna ;oradan da kullanıcıya yollanır.
Bu makalede anlatılanlar teorik olmasına rağmen ASP.NET’i etkili bir geliştirme aracı olarak kullanmak için işin temel mantığını kodlamaya başlamadan önce anlamak iyi olur. İsterseniz ilk ASP.NET sayfamızı hazırlayıp çalıştırarak bu yazımıza son verelim.
İlk ASP.NET Sayfamız
Öncelikle bilgisayarınızda IIS (Micrfost’un Web Sunucusu ) ve .NET Framework’un kurulu olduğunu varsayıyoruz. IIS’i Windows CD’nizden bileşen olarak (Add-on Component) yükleyebilirsiniz. .NET Framework’u ise buradan indirip makinenize ücretsiz olarak kurabilirsiniz. Yalnız .NET Framework Win2000, WinNT 4.0 veya WinXp gerektiriyor. Maalesef Win98 ve WinME üzerinde çalışmıyor.
| <%@ Page Language=”C#” %>
<html> <h2>Merhaba Dünya, Merhaba ASP.NET </h2> |
Yukarıdaki sayfamızı satır satır incelersek önce ilk satır gözümüze hemen çarpar. Bu satırda; sayfa direktiflerinden (Page directive) dili (Language) C# olarak belirledik.Bundan sonra sayfamızı ASP.NET derlerken, sayfadaki program kodlarının C# ile yazıldığını kabul eder.”Şu an sunucudaki tarih ve saat: <%=DateTime.Now.ToString() %>” satırında dinamik içerik üretiyoruz. İçerik ise sunucudaki geçerli tarih ve saati ekrana yazmak. Bunu ise DateTime nesnesinin Now (şimdi) metodunu kullanarak ve onu düz metin nesnesine, ToString() çevirerek yapıyoruz