ASP.NET SAYFA DETAYLARI
Öğr. Gör. Emine TUNÇEL
Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu
ASP.NET SAYFA DETAYLARI
ASP.NET SAYFA DETAYLARI
• Klasik ASP sayfalarında form verileri her seferinde
işlenebilmesi için sunucuya gönderilir. Sayfada herhangi
bir değişiklik olup olmaması önemli değildir, sunucu her
seferinde sayfayı ve formları işler
• ASP.NET sayfalarında ise programın sunucu tarafından
işlenmesi olaya odaklanmıştır. Sadece kontrollerde bir
olay meydana geldiğinde, program yordamı işler.
ASP.NET SAYFA DETAYLARI
• Buradaki örneğimizde yalnızca TextBox kontrolünde bir
değişiklik olduğunda sunucu programı çalıştırır.
• Böylelikle sunucu gereksiz yere meşgul edilmemiş olur
• Aynı zamanda klasik ASP sayfalarından farklı olarak
burada TextBox kontrolüne bir isim girildiğinde olay
gerçekleştikten sonra da bu isim korunacaktır
• Peki sunucu bir olayın gerçekleşip gerçekleşmediğini
nasıl anlıyor ? Örneğin bir TextBox girdisinin değişip
değişmediğini anlaması için elinde iki tane veri olması
lazım
VİEWSTATE
• ASP.NET bunun için sayfanın HTML kodunda, ismi
"ViewState" olan gizli bir form elemanı oluşturur ve
girilen değerleri buraya kodlayarak saklar.
• Örneğimizde bu bir web form kontrolü olan TextBox’ dır.
ViewState den dolayı verilen örnekteki
ASP.NET
sayfasına girdiğimiz TextBox değeri ile mevcut olan
değerin her ikisi de elde edilmiş ve olayın gerçekleşip
gerçekleşmediği kontrol edilebilmiştir.
POSTBACK FORM
• Klasik ASP sayfalarından farklı olarak ASP.NET
sayfalarında formun işleneceği adres yani action kısmı
belirtilemez.
• Bunun anlamı sunucunun sayfadaki işlemleri yapıp
sonuçları yine aynı sayfaya vereceğidir.
• Aynı sayfa işlenmiş haliyle geri gönderilir.
• Browser’dan sayfanın kaynak koduna baktığınızda
action kısmının sayfanın yine kendi adresi referans
verilerek otomatik olarak eklendiğini görürsünüz.
Sayfanın Program Olarak Yorumlanması
•
•
.NET ortamında istemci sunucudan ilk kez bir sayfa isteğinde
bulunduğunda kod bildirim bloğundaki kodlar derlenir. Sayfa ilk
yüklendiğinde biraz gecikmeli geliyorsa sebebi budur.
Ancak bu ilk yüklemeye mahsus bir olaydır. Sayfayı ikinci kez
istediğinizde eğer kodlar da bir değişiklik yapılmamış ise gecikme
yaşamazsınız.
Sayfanın Program Olarak Yorumlanması
•
Sayfadaki form doldurup gönderildiğinde ve kodlar derlendiğinde,
ASP.NET kodların gerekliliklerini yerine getirmek üzere sayfadaki
olayları yakalar. (Bizim örneğimizde bu olay TextBox kontrolündeki
girdinin değişmesi) ve sonucu HTML’e çevirerek istemciye gönderir.
İstemcinin browserı sayfanın son halini gösterir.
Sayfanın Program Olarak Yorumlanması
•
Bu işleyişin sonunda çıktıların tümü Html'dir. Yani bu esnada form
kontrolleri de HTML form elemanlarına çevrilir. Sayfanın kaynak
koduna baktığınızda hiçbir şekilde ASP.NET’ e ait program kodu
göremezsiniz.
Sayfaya Namespace Eklenmesi
 .NET Framework’ü temel olarak birçok namespace’in
toplamından oluşur.
 Namespace; üzerinde çalışılacak programların, alt yapısını
oluşturan class’ların toplamından oluşur
 Visual Studio editörü kendisi için gereken Namespace’leri
uygulamaya otomatik olarak ekler ve kullanır.
 Bunlar:
 System
 System.IO
 System.Collections
 System.Web
 System.Web.UI
 System.Web.UI.HTMLControls
 System.Web.UI.WebControls
Sayfaya Namespace Eklenmesi
 Bu namespace’ler ASP.NET’in doğal bir parçasıdır ve
uygulamanızda bunlar için ek bir bildirimde bulunmanıza gerek
yoktur
 Ancak kendinizin ya da başkalarının oluşturduğu namespace’leri
uygulamanızda kullanmak isteyebilirsiniz. Bu durumda bu
namespace’i sayfanızda bildirmeniz (import) gereklidir
 Bir namespace’i import etmemiz için aşağıdaki şekilde bir bildirim
kullanmalıyız. Sayfanın başına,
 <%@ import Namespace=namespace'in ismi %>
 Örneğin ASP.NET ile tanımlı gelmeyen fakat .NET Frameworkünde
bulunan System.Drawing namespace’ini sayfamıza aşağıdaki gibi
dahil ederiz.
 <%@ import Namespace="System.Drawing" %>
• KAYNAK
• C# ile ASP.NET
• Zafer Demirkol
Download

asp.net sayfa detayları - Personel Web Sistemi