En son web geliştirme öğreticiler
 

ASP.NET Web Formları - Sunucu Kontrolleri


Sunucu denetimleri, sunucu tarafından anlaşılır etiketlerdir.


Klasik ASP Sınırlamalar

Aşağıdaki liste önceki bölümde kopyalanan:

<html>
<body bgcolor="yellow">
<center>
<h2>Hello w3ii!</h2>
<p> <%Response.Write(now())%> </p>
</center>
</body>
</html>

Yukarıdaki kod Klasik ASP bir sınırlama gösterilmektedir: Eğer çıkış görünmesini istediğiniz yere kod bloğu yerleştirilmiş olmalıdır.

Klasik ASP birlikte, HTML kendisinden yürütülebilir kod ayırmak mümkün değildir. Bu sayfa okumak zor, ve bakımı zorlaştırır.


ASP.NET - Sunucu Kontrolleri

ASP.NET çözdü "spaghetti-code" sunucu kontrolleri ile yukarıda açıklanan sorunu.

Sunucu denetimleri, sunucu tarafından anlaşılır etiketlerdir.

Sunucu denetimleri üç türü vardır:

  • HTML Sunucu Kontrolleri - Geleneksel HTML etiketleri
  • Web Sunucusu Kontroller - Yeni ASP.NET etiketleri
  • Doğrulama Sunucusu Kontroller - giriş doğrulama için

ASP.NET - HTML Sunucu Kontrolleri

HTML sunucu kontrolleri sunucu tarafından anlaşılan HTML etiketleri bulunmaktadır.

ASP.NET dosyaları HTML elemanları varsayılan olarak metin olarak kabul edilir. Bu unsurlar programlanabilir hale getirmek için, HTML öğesine bir runat = "server" ayrıntısını ekleyin. Bu nitelik eleman bir sunucu kontrol olarak tedavi edilmesi gerektiğini belirtir. id niteliği sunucu denetimi tanımlamak eklenir. id referans çalışma zamanında sunucu denetimi işlemek için kullanılabilir.

Note: Tüm HTML sunucu kontrolleri bir içinde olmalıdır <form> ile etiket runat="server" özelliğinde. runat="server" nitelik formu sunucusunda işlenen gerektiğini gösterir. Ayrıca kapalı kontrolleri sunucu komut dosyaları tarafından erişilebilir olduğunu gösterir.

Aşağıdaki örnekte bir .aspx dosyasında bir HtmlAnchor sunucu denetimi ilan ediyoruz. Daha sonra işlemek HRef bir olay işleyicisinde HtmlAnchor kontrol özelliği (an event handler is a subroutine that executes code for a given event) . Page_Load olay ASP.NET anlar birçok etkinliğe biridir:

<script runat="server">
Sub Page_Load
link1.HRef="http://www.w3ii.com"
End Sub
</script>

<html>
<body>

<form runat="server">
<a id="link1" runat="server">Visit w3ii!</a>
</form>

</body>
</html>

çalıştırılabilir kod kendisi HTML dışında taşındı.


ASP.NET - Web Sunucusu Kontrolleri

Web sunucusu denetimleri sunucu tarafından anlaşılan özel ASP.NET etiketleri bulunmaktadır.

HTML sunucu kontrolleri gibi, Web sunucusu denetimleri de sunucuda oluşturulan ve çalışmadığını bir runat = "server" ayrıntısını gerektirir. Ancak, Web sunucusu denetimleri mutlaka varolan herhangi HTML öğelerine eşleşmeyebileceğinden ve onlar daha karmaşık unsurları temsil edebilir.

Bir Web sunucusu denetimi oluşturmak için sözdizimi şöyledir:

<asp:control_name id="some_id" runat="server" />

Aşağıdaki örnekte bir .aspx dosyasında bir Düğme sunucu denetimi ilan ediyoruz. Sonra düğme metni değiştirir Click olayı için bir olay işleyicisi oluşturmak:

<script runat="server">
Sub submit(Source As Object, e As EventArgs)
button1.Text="You clicked me!"
End Sub
</script>

<html>
<body>

<form runat="server">
<asp:Button id="button1" Text="Click me!"
runat="server" OnClick="submit"/>
</form>

</body>
</html>

ASP.NET - Doğrulama Sunucusu Kontrolleri

Doğrulama sunucusu denetimleri kullanıcı girişi doğrulamak için kullanılır. kullanıcı giriş doğrulaması geçemezse, bu kullanıcıya bir hata mesajı görüntüler.

Her bir doğrulama sistemi (belirli bir değer veya değerler bir dizi karşı doğrulama gibi) doğrulama özel bir tip gerçekleştirir.

Bir Düğme, ImageButton veya LinkButton kontrolü tıklandığında varsayılan olarak, sayfa doğrulama gerçekleştirilir. Bir düğme kontrolü false CausesValidation özelliğini ayarlayarak tıklandığında Sen doğrulama önleyebilir.

Bir Doğrulama sunucu denetimi oluşturmak için sözdizimi şöyledir:

<asp:control_name id="some_id" runat="server" />

Aşağıdaki örnekte biz bir TextBox denetimi, bir Düğme denetimi ve bir .aspx dosyasında bir RangeValidator kontrolünü ilan ediyoruz. Doğrulama başarısız olursa, metin "The value must be from 1 to 100!" RangeValidator kontrolünde görüntülenir:

Örnek

<html>
<body>

<form runat="server">
<p>Enter a number from 1 to 100:
<asp:TextBox id="tbox1" runat="server" />
<br /><br />
<asp:Button Text="Submit" runat="server" />
</p>

<p>
<asp:RangeValidator
ControlToValidate="tbox1"
MinimumValue="1"
MaximumValue="100"
Type="Integer"
Text="The value must be from 1 to 100!"
runat="server" />
</p>
</form>

</body>
</html>

»Örnek göster