ASP.NET - ά³Ö ViewState
ͨ¹ýÔÚ Web ±íµ¥ÖÐά³Ö¶ÔÏóµÄ ViewState £¨ÊÓͼ״̬£©£¬Äú¿ÉÒÔʡȥ´óÁ¿µÄ±àÂ빤×÷¡£
ά³Ö ViewState £¨ÊÓͼ״̬£©
µ± classic ASP ÖÐµÄ±íµ¥±»Ìύʱ£¬ËùÓÐµÄ±íµ¥Öµ¶¼»á±»Çå¿Õ¡£ÉèÏëһϣ¬ÄúÌá½»ÁËÒ»ÕÅ´øÓдóÁ¿ÐÅÏ¢µÄ±íµ¥£¬¶ø·þÎñÆ÷·µ»ØÁËÒ»¸ö´íÎó¡£Äú½«²»µÃ²»·µ»Ø±íµ¥£¬È»ºó¸üÕýÆäÖеÄÐÅÏ¢¡£Äúµã»÷ºóÍ˰´Å¥£¬È»ºó»á·¢ÉúÊ²Ã´ÄØ... ËùÓÐµÄ±íµ¥Öµ¶¼±»Çå¿ÕÁË£¬¶øÄú½«²»µÃ²»ÖØÐ¿ªÊ¼ËùÓеÄÒ»ÇС£Õ¾µã²»»áά³ÖÄúµÄ ViewState¡£
µ± ASP .NET ÖÐµÄ±íµ¥±»Ìύʱ£¬±íµ¥»áËæËùÓÐ±íµ¥ÖµÒ»Í¬ÖØÐ³öÏÖ¡£ÈçºÎ×öµ½µÄÄØ£¿ÕâÊÇÓÉÓÚ ASP .NET ά³ÖÁËÄúµÄ ViewState¡£ViewState »áÔÚÒ³Ãæ±»Ìá½»µ½·þÎñÆ÷ʱָʾÆä״̬¡£Í¨¹ýÔÚÿÕÅÒ³ÃæÖеÄÒ»¸ö <form runat="server"> ¿Ø¼þÖзÅÖÃÒ»¸öÒþ²ØÓò£¬ÎÒÃǾͿÉÒÔ¶¨ÒåÒ³ÃæµÄ״̬ÁË¡£Ô´´úÂë¿ÉÄÜÀàËÆÕâÑù£º
<form name="_ctl0" method="post" action="page.aspx" id="_ctl0">
<input type="hidden" name="__VIEWSTATE"
value="dDwtNTI0ODU5MDE1Ozs+ZBCF2ryjMpeVgUrY2eTj79HNl4Q=" />
.....some code
</form>
ά³Ö ViewState ÊÇ ASP.NET Web ±íµ¥µÄĬÈÏÉèÖá£Èç¹ûÄú²»Ï£Íûά³Ö ViewState£¬ÇëÔÚ .aspx Ò³ÃæµÄ¶¥²¿°üº¬Ö¸Á <%@ Page EnableViewState="false" %>£¬»òΪÈÎÒâ¿Ø¼þÌí¼ÓÊôÐÔ£ºEnableViewState="false"¡£
Çë¿´ÏÂÃæµÄ .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 ·½Ê½¡£µ±Äúµã»÷Ìá½»°´Å¥Ê±£¬±íµ¥Öµ²»»áÏûʧ£º
<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>
ÏÔʾÕâ¸öÀý×Ó £¨ÇëÔÚÓұߵĿò¼ÜÖеã»÷¡°²é¿´ÔÎĵµ¡±£¬Äú¿ÉÒÔ¿´µ½ ASP .NET ÒѾÏò±íµ¥ÖÐÌí¼ÓÁËÒ»¸öÒþ²ØÓò£¬ÕâÑù¾Í¿ÉÒÔά³Ö ViewState¡££©