Latest web development tutorials

ASP.NET حالة العرض

من خلال الحفاظ على الكائن في نموذج ويب في حالة العرض (عرض الدولة)، يمكنك حفظ الكثير من الترميز.


الحفاظ على حالة العرض (عرض الدولة)

في ASP الكلاسيكية، عندما يقدم نموذج، يتم مسح جميع القيم النموذج. افترض أنك تقديم نموذج مع الكثير من المعلومات، والخادم بإرجاع خطأ. لديك للعودة إلى تصحيحات النموذج. النقر فوق زر العودة، وبعد ذلك ما حدث ...... يتم مسح جميع القيم النموذج، عليك أن تبدأ كل شيء! الموقع لا تحافظ على حالة العرض الخاص بك.

ASP .NET في حين يقدم نموذج، نموذج جنبا إلى جنب مع القيم شكل تظهر معا في نافذة المتصفح. كيف نفعل ذلك؟ وذلك لأن ASP .NET يحافظ على حالة العرض الخاص بك. وسيقدم حالة العرض على الملقم عند الصفحة تشير مكانتها. هذه الدولة هي عن طريق كل صفحة مع <شكل RUNAT = "الخادم"> التحكم في وضع تعريف حقل مخفي. شفرة المصدر على النحو التالي:

<form name="_ctl0" method="post" action="page.aspx" id="_ctl0">
<input type="hidden" name="__VIEWSTATE"
value="dDwtNTI0ODU5MDE1Ozs+ZBCF2ryjMpeVgUrY2eTj79HNl4Q=" />

.....some code

</form>

الحفاظ على حالة العرض هو الإعداد الافتراضي لنماذج ويب ASP.NET. إذا كنت لا تريد للحفاظ على حالة العرض، في الجزء العلوي من .aspx اتصال الصفحة التي تحتوي على إرشادات <٪ @ صفحة EnableViewState = "كاذبة"٪>، أو إضافة خصائص EnableViewState = "كاذبة" لأية رقابة.

نظرة على ملف aspx التالية. ومما يدل على "القديم" وضع التشغيل. عند النقر على زر إرسال، سوف تختفي قيمة النموذج:

أمثلة

<html>
<body>

<form action="demo_classicasp.aspx" method="post">
Your name: <input type="text" name="fname" size="20">
<input type="submit" value="Submit">
</form>
<%
dim fname
fname=Request.Form("fname")
If fname<>"" Then
Response.Write("Hello " & fname & "!")
End If
%>

</body>
</html>

مظاهرة >>

هنا هو طريقة جديدة ASP .NET. عند النقر على زر إرسال، سوف قيمة نموذج لا تختفي:

أمثلة

انقر على سبيل المثال من الإطار الأيمن لعرض شفرة المصدر، وسترى ASP .NET تمت إضافة حقل مخفي على شكل للحفاظ على حالة العرض.

<script runat="server">
Sub submit(sender As Object, e As EventArgs)
lbl1.Text="Hello " & txt1.Text & "!"
End Sub
</script>

<html>
<body>

<form runat="server">
Your name: <asp:TextBox id="txt1" runat="server" />
<asp:Button OnClick="submit" Text="Submit" runat="server" />
<p><asp:Label id="lbl1" runat="server" /></p>
</form>

</body>
</html>

مظاهرة >>