ASP.NET sunucu denetimlerine genel bakış
Bu makalede HTML sunucusu denetimleri, Web sunucusu denetimleri, Liste denetimleri vb. gibi ASP.NET sunucu denetimleri tanıtılmaktadır.
Orijinal ürün sürümü: ASP.NET
Özgün KB numarası: 306459
Bu makale, aşağıdaki Microsoft .NET Framework Sınıf Kitaplığı ad alanlarını ifade eder:
System.Web.UI.HtmlControls.HtmlControl
System.Web.UI.WebControls.WebControl
ASP.NET sayfa çerçevesindeki sunucu denetimleri
ASP.NET sayfa çerçevesi, Web için daha yapılandırılmış bir programlama modeli sağlamak üzere tasarlanmış bir dizi yerleşik sunucu denetimi içerir. Bu denetimler aşağıdaki özellikleri sağlar:
- Otomatik durum yönetimi.
- Nesneyi kullanmak zorunda kalmadan nesne değerlerine
Request
basit erişim. - Daha iyi yapılandırılmış uygulamalar oluşturmak için sunucu tarafı kodundaki olaylara tepki verebilme.
- Web sayfaları için kullanıcı arabirimleri oluşturmaya yönelik yaygın yaklaşım.
- Çıkış, tarayıcının özelliklerine göre otomatik olarak özelleştirilir.
Yerleşik denetimlere ek olarak, ASP.NET sayfa çerçevesi de kullanıcı denetimleri ve özel denetimler oluşturma olanağı sağlar. Kullanıcı denetimleri ve özel denetimler, çok daha zengin bir kullanıcı arabirimi oluşturmak için mevcut denetimleri geliştirebilir ve genişletebilir.
HTML sunucusu denetimleri
HTML sunucusu denetimleri, runat=server
bir öznitelik içeren HTML öğeleridir. HTML sunucusu denetimleri, karşılık gelen HTML etiketleriyle aynı HTML çıkışına ve özelliklerine sahiptir. Ayrıca, HTML sunucu denetimleri otomatik durum yönetimi ve sunucu tarafı olayları sağlar. HTML sunucusu denetimleri aşağıdaki avantajları sunar:
- HTML sunucusu denetimleri, karşılık gelen HTML etiketleriyle bire bir eşler.
- ASP.NET uygulaması derlendiğinde, özniteliğiyle
runat=server
HTML sunucusu denetimleri derlemede derlenir. - Çoğu denetim, denetim için en yaygın kullanılan olay için bir
OnServerEvent
içerir. Örneğin, denetimin<input type=button>
birOnServerClick
olayı vardır. - Belirli HTML sunucusu denetimleri olarak uygulanmayan HTML etiketleri sunucu tarafında kullanılabilir; ancak, derlemeye olarak
HtmlGenericControl
eklenirler. - ASP.NET sayfası yeniden gönderildiğinde, HTML sunucusu denetimleri değerlerini tutar.
System.Web.UI.HtmlControls.HtmlControl
Temel sınıf tüm ortak özellikleri içerir. HTML sunucusu denetimleri bu sınıftan türetilir.
HTML sunucusu denetimi kullanmak için aşağıdaki söz dizimini kullanın (örnek olarak denetimi kullanır HtmlInputText
):
<input type="text" value="hello world" runat=server />
ASP.NET'de kullanılabilen tek tek HTML sunucusu denetimleri hakkında daha fazla bilgi için aşağıdaki Web sitelerine bakın:
Web sunucusu denetimleri
Web denetimleri Button, TextBox ve Hyperlink gibi HTML sunucusu denetimlerine benzer, ancak Web denetimlerinin standartlaştırılmış bir özellik adları kümesi vardır. Web sunucusu denetimleri aşağıdaki avantajları sunar:
- Üreticilerin ve geliştiricilerin kullanıcı arabirimini otomatik olarak oluşturan araçlar veya uygulamalar oluşturmasını kolaylaştırın.
- HTML denetimlerinin nasıl çalıştığı hakkında daha az bilgi gerektiren etkileşimli Web formları oluşturma işlemini basitleştirin ve bunları kullanma görevini hatalara daha az eğilimli hale getirin.
System.Web.UI.WebControls.WebControl
Temel sınıf tüm ortak özellikleri içerir. Web sunucusu denetimlerinin çoğu bu sınıftan türetilir.
Web sunucusu denetimi kullanmak için aşağıdaki söz dizimini kullanın (örnek olarak TextBox denetimini kullanır):
<asp:textbox text="hello world" runat=server />
Web sunucusu denetimleri dört kategoriye ayrılabilir:
- Temel Web Denetimleri
- Doğrulama Denetimleri
- Liste Denetimleri
- Zengin Denetimler
Temel web denetimleri
Temel Web denetimleri, HTML sunucu denetimi karşılıklarıyla aynı işlevselliği sağlar. Ancak, temel Web denetimleri üzerinde programlayabileceğiniz ek yöntemler, olaylar ve özellikler içerir.
ASP.NET'de kullanılabilen tek tek Web denetimleri hakkında daha fazla bilgi için aşağıdaki Web sitelerine bakın:
Doğrulama denetimleri
Doğrulama denetimleri, sayfanın diğer denetimlerine girilen değerleri doğrulamak için kullanılır. Doğrulama denetimleri, sayfanın görüntülendiği tarayıcının özelliklerine bağlı olarak istemci tarafı doğrulama, sunucu tarafı doğrulama veya her ikisini birden gerçekleştirir. Doğrulama denetimleri aşağıdaki avantajları sunar:
- Doğrulamak istediğiniz her denetimle bir veya daha fazla doğrulama denetimi ilişkilendirebilirsiniz.
- Doğrulama, sayfa formu gönderildiğinde gerçekleştirilir.
- Doğrulamanın gerçekleşip gerçekleşmeyeceğini program aracılığıyla belirtebilirsiniz. Bu, kullanıcının tüm alanlarda geçerli verileri doldurmak zorunda kalmadan çıkabilmesi için iptal düğmesi sağlamak istediğinizde yararlıdır.
- Doğrulama denetimleri, doğrulamanın istemci tarafında mı yoksa sunucu tarafında mı gerçekleştirilmesi gerektiğini otomatik olarak algılar.
Not
İstemci tarafı doğrulama, geri gönderme işlemi tamamlanmadan önce hataları yakalar. Bu nedenle, tek bir sayfada istemci tarafı ve sunucu tarafı doğrulama denetimlerinin birleşimleri varsa, istemci tarafı doğrulaması başarısız olursa sunucu tarafı doğrulaması ön plana çıkar. ASP.NET'de kullanılabilen tek tek doğrulama denetimleri hakkında daha fazla bilgi için aşağıdaki Web sitelerine bakın:
Liste denetimleri
Liste denetimleri, koleksiyonlara bağlamayı destekleyen özel Web sunucusu denetimleridir. Veri satırlarını özelleştirilmiş bir şablon biçiminde görüntülemek için liste denetimlerini kullanabilirsiniz. Tüm liste denetimleri, koleksiyonlara bağlanmak için kullanılan DataSource ve DataMember özelliklerini kullanıma sunar.
Liste denetimleri yalnızca IEnumerable, ICollection veya IListSource arabirimlerini destekleyen koleksiyonlara bağlanabilir. Örneğin, bir Visual C# .NET örnek sayfası aşağıdaki gibi görünür:
<%@ Page Language="C#" %>
<script runat="server">
Public void Page_Load()
{
String[] myStringArray = new String[] {"one","two","three"};
rptr.DataSource = myStringArray;
rptr.DataBind();
}
</script>
<html>
<body>
<asp:repeater id=rptr runat="server">
<itemtemplate><%# Container.DataItem %><br></itemtemplate>
</asp:repeater>
</body>
</html>
Visual Basic .NET örnek sayfası aşağıdaki gibi görünür:
<%@ Page Language="vb" %>
<script runat="server">
public sub Page_Load()
Dim myStringArray as String()
myStringArray = new String() {"one","two","three"}
rptr.DataSource = myStringArray
rptr.DataBind()
end sub
</script>
<html>
<body>
<asp:repeater id=rptr runat="server">
<itemtemplate><%# Container.DataItem %><br></itemtemplate>
</asp:repeater>
</body>
</html>
Çıkış aşağıdaki gibi görünür:
- Bir
- Iki
- Üç
ASP.NET'de kullanılabilen tek tek liste denetimleri hakkında daha fazla bilgi için aşağıdaki Web sitelerine bakın:
Zengin denetimler
Önceki denetimlere ek olarak, ASP.NET sayfa çerçevesi, zengin denetimler olarak adlandırılan göreve özgü birkaç denetim sağlar. Zengin denetimler birden çok HTML öğesiyle oluşturulur ve zengin işlevler içerir. Zengin denetimlere örnek olarak Takvim denetimi ve AdRotator denetimi verilebilir.
ASP.NET'de kullanılabilen tek tek zengin denetimler hakkında daha fazla bilgi için aşağıdaki Web sitelerine bakın:
Kullanıcı denetimleri
Genellikle, fazladan kod yazmak zorunda kalmadan Web Formunuzun kullanıcı arabirimini yeniden kullanmak isteyebilirsiniz. ASP.NET, Web Forms kullanıcı denetimlerine dönüştürerek bunu yapmanızı sağlar. .ascx dosya uzantısına sahip kullanıcı denetimleri, tek bir Web Formu içinde birden çok kez kullanılabilir.
Web Formunu kullanıcı denetimine dönüştürmek için şu adımları izleyin:
- Tüm
<html>
,<head>
,<body>
ve<form>
etiketlerini kaldırın. @ Page
Yönerge sayfada görünüyorsa olarak değiştirin@ Control
.- Kullanıcı denetiminin
@ Control
örneği oluşturulurken güçlü bir şekilde yazabilmesi için yönergesine birclassName
öznitelik ekleyin. - Denetime açıklayıcı bir dosya adı verin ve dosya uzantısını .aspx olarak .ascx olarak değiştirin.
Kullanıcı denetimleri hakkında daha fazla bilgi için bkz. Web Forms Kullanıcı Denetimleri.
Özel denetimler
Yerleşik Web denetimlerine ek olarak, ASP.NET kendi özel denetimlerinizi oluşturmanıza da olanak tanır. Bu senaryolardan biriyle karşı karşıyaysanız özel denetimler geliştirmek yararlı olabilir:
- İki veya daha fazla yerleşik Web denetiminin işlevselliğini birleştirmeniz gerekir.
- Yerleşik denetimin işlevselliğini genişletmeniz gerekir.
- Şu anda var olan denetimlerden farklı bir denetime ihtiyacınız vardır.
Özel denetimler geliştirme hakkında daha fazla bilgi için aşağıdaki konulara bakın:
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin