ล่าสุดการพัฒนาเว็บบทเรียน
×

ASP.NET เกี่ยวกับการสอน

ASP.NET บ้าน ASP.NET แนะนำ

WP เกี่ยวกับการสอน

WebPages แนะนำ WebPages มีดโกน WebPages แบบ WebPages โฟลเดอร์ WebPages สถานการณ์โดยรวม WebPages ฟอร์ม WebPages วัตถุ WebPages ไฟล์ WebPages ฐานข้อมูล WebPages ผู้ช่วย WebPages WebGrid WebPages ชาร์ต WebPages อีเมล์ WebPages PHP WebPages ประกาศ WebPages ตัวอย่าง

WP คู่มืออ้างอิง

WebPages ชั้นเรียน WebPages ความปลอดภัย WebPages ฐานข้อมูล WebPages เว็บเมล์ WebPages ผู้ช่วย

ASP.NET Razor

Razor แนะนำ Razor วากยสัมพันธ์ Razor C# ตัวแปร Razor C# ลูป Razor C# ตรรกะ Razor VB ตัวแปร Razor VB ลูป Razor VB ตรรกะ

ASP.NET MVC

MVC แนะนำ MVC ใบสมัคร MVC โฟลเดอร์ MVC แบบ MVC ตัวควบคุม MVC เข้าชม MVC ฐานข้อมูล MVC แบบ MVC ความปลอดภัย MVC HTML ผู้ช่วย MVC ประกาศ MVC การอ้างอิง

WF สอน

WebForms แนะนำ WebForms หน้า WebForms การควบคุม WebForms เหตุการณ์ WebForms ฟอร์ม WebForms ViewState WebForms กล่องข้อความ WebForms ปุ่ม WebForms ข้อมูลผูกพัน WebForms ArrayList WebForms Hashtable WebForms SortedList WebForms XML ไฟล์ WebForms Repeater WebForms DataList WebForms DbConnection WebForms Master หน้า WebForms การเดินเรือ WebForms ตัวอย่าง


 

ASP.NETเว็บฟอร์ม - คง ViewState


คุณอาจจะบันทึกจำนวนมากของการเข้ารหัสโดยการรักษา ViewState ของวัตถุในรูปแบบเว็บของคุณ


การดูแลรักษา ViewState

เมื่อส่งแบบฟอร์มใน ASP คลาสสิกค่ารูปแบบทั้งหมดจะถูกลบ สมมติว่าคุณได้ส่งแบบฟอร์มที่มีข้อมูลจำนวนมากและเซิร์ฟเวอร์กลับมาพร้อมกับข้อผิดพลาด คุณจะต้องกลับไปที่รูปแบบและแก้ไขข้อมูล คุณคลิกปุ่มย้อนกลับและสิ่งที่เกิดขึ้น ....... ค่ารูปแบบทั้งหมดจะถูกลบและคุณจะต้องเริ่มต้นอีกครั้ง! เว็บไซต์ที่ไม่ได้รักษา ViewState ของคุณ

เมื่อส่งแบบฟอร์มใน ASP .NET, รูปแบบโผล่เข้ามาในหน้าต่างเบราว์เซอร์ร่วมกับค่าทุกรูปแบบ มาได้อย่างไร? เพราะนี่คือ ASP .NET รักษา ViewState ของคุณ ViewState แสดงสถานะของหน้าเมื่อส่งไปยังเซิร์ฟเวอร์ สถานะถูกกำหนดผ่านสนามที่ซ่อนอยู่ในแต่ละหน้าวางกับ <form runat = "เซิร์ฟเวอร์"> การควบคุม แหล่งที่มาจะมีลักษณะบางอย่างเช่นนี้

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

.....some code

</form>

การดูแลรักษา ViewState เป็นค่าเริ่มต้นสำหรับฟอร์มเว็บ ASP.NET หากคุณต้องการที่จะไม่รักษา ViewState ที่รวมถึงการสั่ง <% @ หน้า EnableViewState = "false" %> ที่ด้านบนของหน้าขอบหรือเพิ่มแอตทริบิวต์ EnableViewState = "false" ในการควบคุมใด ๆ

ดูไฟล์ .aspx ต่อไปนี้ มันแสดงให้เห็นถึง "old" วิธีที่จะทำมัน เมื่อคุณคลิกที่ปุ่มส่งค่ารูปแบบจะหายไป:

ตัวอย่าง

<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 ได้เพิ่มข้อมูลที่ซ่อนอยู่ในรูปแบบที่จะรักษา ViewState

<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>
แสดงตัวอย่าง»