ASP.NET - ViewState ਰੱਖਣਾ

ਵੈੱਬ ਫਾਰਮ ਵਿੱਚ ਆਬਜੈਕਟ ਦੇ ViewState (ਦਰਸ਼ਨ ਸਥਿਤੀ) ਨੂੰ ਰੱਖਣ ਨਾਲ ਤੁਸੀਂ ਬਹੁਤ ਸਾਰੀ ਕੋਡਿੰਗ ਦੀ ਜ਼ਰੂਰਤ ਤੋਂ ਬਚ ਸਕਦੇ ਹੋ。

ViewState (ਦਰਸ਼ਨ ਸਥਿਤੀ) ਨੂੰ ਰੱਖਣਾ

ਜਦੋਂ ਕਲਾਸਿਕ ਐਸਪੀ.ਐੱਨ.ਈ. ਵਿੱਚ ਫਾਰਮ ਨੂੰ ਸੰਬੇਦਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਸਾਰੇ ਫਾਰਮ ਦੇ ਮੁੱਲ ਹਟ ਜਾਣਗੇ। ਧਾਰਨਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਇਕ ਬਹੁਤ ਸਾਰੇ ਸੂਚਨਾ ਵਾਲੇ ਫਾਰਮ ਨੂੰ ਸੰਬੇਦਨ ਕਰ ਰਹੇ ਹੋ ਅਤੇ ਸੇਵਰ ਨੇ ਇਕ ਤਰਜ਼ਮਾਨ ਵਾਲਾ ਰਿਟਰਨ ਕੀਤਾ ਹੈ। ਤੁਸੀਂ ਫਾਰਮ ਨੂੰ ਵਾਪਸ ਲੈਣਾ ਹੋਵੇਗਾ ਅਤੇ ਉਸ ਵਿੱਚ ਸੂਚਨਾ ਸੁਧਾਰਨੀ ਹੋਵੇਗੀ। ਤੁਸੀਂ ਵਾਪਸ ਪ੍ਰਵੇਸ਼ ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਤਾਂ ਹੋਵੇਗਾ... ਸਾਰੇ ਫਾਰਮ ਦੇ ਮੁੱਲ ਹਟ ਜਾਣਗੇ ਅਤੇ ਤੁਸੀਂ ਸਾਰੀਆਂ ਚੀਜਾਂ ਮੁੜ ਸ਼ੁਰੂ ਕਰਨੀ ਹੋਵੇਗੀ। ਸਾਈਟ ਤੁਹਾਡੇ ViewState ਨੂੰ ਰੱਖਣਾ ਨਹੀਂ ਕਰਦੀ。

ਜਦੋਂ ਐਸਪੀ.ਐੱਨ.ਈ.ਟੀ ਵਿੱਚ ਫਾਰਮ ਨੂੰ ਸੰਬੇਦਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਤਾਂ ਫਾਰਮ ਨੂੰ ਸਾਰੇ ਫਾਰਮ ਦੇ ਮੁੱਲਾਂ ਨਾਲ ਮੁੜ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਕਿਵੇਂ ਇਹ ਹੋਵੇਗਾ? ਇਹ ਐਸਪੀ.ਐੱਨ.ਈ.ਟੀ ਵਿੱਚ ਤੁਹਾਡੇ ViewState ਨੂੰ ਰੱਖਣ ਕਰਕੇ ਹੋਵੇਗਾ। ViewState ਪੇਜ ਨੂੰ ਸੇਵਰ ਤੱਕ ਸੰਬੇਦਨ ਕਰਨ ਦੇ ਸਮੇਂ ਇਸ ਦੇ ਸਥਿਤੀ ਨੂੰ ਸੂਚਿਤ ਕਰਦਾ ਹੈ। ਹਰ ਪੇਜ ਵਿੱਚ ਇਕ <form runat="server"> ਕੰਟਰੋਲ ਵਿੱਚ ਇਕ ਛੁਪੀ ਖੇਤਰ ਰੱਖ ਕੇ ਅਸੀਂ ਪੇਜ ਦੀ ਸਥਿਤੀ ਨਿਰਧਾਰਿਤ ਕਰ ਸਕਦੇ ਹਾਂ। ਸਰੋਤ ਕੋਡ ਇਸ ਤਰ੍ਹਾਂ ਹੋ ਸਕਦਾ ਹੈ:

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

ViewState ਨੂੰ ਰੱਖਣਾ ਹੈ ਐਸਪੀਐੱਨਈਟੀ ਵੈੱਬ ਫਾਰਮ ਦੀ ਡਿਫਾਲਟ ਸੈਟਿੰਗ ਹੈ। ਅਗਰ ਤੁਸੀਂ ViewState ਨੂੰ ਰੱਖਣਾ ਨਹੀਂ ਚਾਹੁੰਦੇ ਤਾਂ .aspx ਪੇਜ ਦੇ ਉੱਪਰ ਇਕੱਠੇ ਇਕ ਨਿਰਦੇਸ਼ ਲਿਆਓ: <%@ Page EnableViewState="false" %>، ਜਾਂ ਕਿਸੇ ਵੀ ਕੰਟਰੋਲ ਨੂੰ ਵਿਸ਼ੇਸ਼ਤਾ ਜੋੜੋ: EnableViewState="false"。

ਕੀਤੇ ਹੇਠਾਂ ਦੇ .aspx ਫਾਈਲ ਨੂੰ ਵੇਖੋ। ਇਹ ਪੁਰਾਣੇ ਚਲਣ ਤੌਰ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਤੁਸੀਂ ਸੰਬੇਦਨ ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਤਾਂ ਫਾਰਮ ਦੇ ਮੁੱਲ ਹਟ ਜਾਣਗੇ:

<html>
<body>
<form action="demo_classicasp.aspx" method="post">
ਤੁਹਾਡਾ ਨਾਮ: <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">
ਤੁਹਾਡਾ ਨਾਮ: <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 ਬਣਾਈ ਰਖਿਆ ਜਾ ਸਕਦਾ ਹੈ。)