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>

এই উদাহরণটি দেখান

এটি নতুন এসপি এনইটিই পদ্ধতি। আপনি সম্মানে বুটন ক্লিক করলে, ফর্মের মান নিশ্চিতভাবে নষ্ট না হয়:

<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>

এই উদাহরণটি দেখান (ডানদিকের ফ্রেমে ‘প্রকৃত ডকুমেন্ট দেখুন’ ক্লিক করুন, তারপর আপনি দেখতে পাবেন যে এসপি এনইটিই ফর্মে একটি লিঙ্কড ডোমেইন যোগ করেছে, যার মাধ্যমে ভিস্টেস্‌ সংরক্ষিত হয়。)