مدیریت ViewState درASP.NET
جمعه 30 بهمن 1394در این مقاله به شما نحوه ی مدیریت Viewsatate آموزش داده میشود و همچنین مراحل ساختن و کار کردن با آن را بطور صریح و واضح توضیح داده خواهد شد.
ما یک state را میتوانم با متدهای زیر مدیریت کنیم:
Session.2
Cookie.4
Viewstate:
Viewsatate برای نگهداری مقدار در صفحه ی فعلی(صفحه ای که در آن هستیم) مورد استفاده قرار میگیرند.
طول عمر Viewsatateبه عمر صفحه ی فعلی بستگی دارد.رفتن به صفحات دیگر باعث از بین رفتن مقدار Viewsatate صفحه ی قبلی میشود و مقدار آن با اجرای صفحه ی دیگر تغییر خواهد کرد.
Viewsatate و همچنین کنترل معین آن، در یک صفحه فعال و غیرفعال میشود و با حالت on/off بسیار انعطاف پذیر است. شما میتوانید Viewsatate را در صفحه اجرا شده ی asp.net بوسیله ی viewsource و از طریق مرورگر خود ببینید.در اینجا شما میتوانید یک نوع فایل hidden شده ی VIEWSTATE را مشاهده کنید.
Viewsatate اندازه صفحه را افزایش میدهد چرا که در آن صفحه و صفحه ی کنترل مقدار ذخیره میشود و این دلیلی است که ما از استفاده ی Viewsatate خودداری میکنیم.
اما برای ذخیره مقدار lightweight به آسانی و بسیار سریع کار میکند.
پیاده سازی و استفاده ی قدم به قدم از Viewsatate در صفحه:
یک پروژه ی جدید وبسایت در asp.net بسازید.
به تب فایل، new و سپس website بروید و به آن نام “ViewStateSample”را بدهید.
روی پروزه راست کلیلک کنید ADD، سپس ADD NEW ITEM و در آخر WebForm را از لیست itemها انتخاب کنید.ما در اینجا یک وب فرم با نام پیش فرض “DEFAULT.ASPX” اضافه کردیم.
چگونه Viewsatate را در page level فعال و غیرفعال کنیم:
روی Default.aspx دابل کلیلک کنید و روی source option کلیلک کنید.
تنظیمات page level viewstate:
پنجره property را با فشار دادن کلید میانبر CTRL+W+P باز کنید، cursor را به سمت بالای صفحه حرکت بدهید در آنجا این کد نوشته شده است:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
چون cursor شما در بالای خط پنجره ی property جستجو میکند،چیزی که نمایش داده خواهد شد propertyهای فعلی در صفحه ی asp.net است.
شما دو نوع مقدار برای انتخاب دارید true و false.
ما برای ON شدن Viewstate در صفحه مقدار true را انتخاب میکنیم.بدلیل اینکه ما EnableViewState = True انتخاب کردیم،مقدار صفحه ی ASP.NET تغییر خواهد کرد و کد زیر برای آن تنظیم خواهد شد.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" EnableViewState="True" %>
تنظیمات Contorol Level ViewState :
حالا میخواهیم که یک کنترل TextBox روی صفحه داشته باشیم همچنین ما میتوانیم از طریق control level، ViewStateرا فعال یا غیرفعال کنیم.
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
روی TextBox script در asp.net کلیک کنید و پنجره ی property را بررسی کنید.
ViewState با property های زیر:
1. Count: برای گرفتن تعداد آیتم ها در ViewState
2.Key: برای گرفتن نام همه ی keyهایی که viewstate را تعریف میکند.
3.Values: برای گرفتن مقادیر همه ی آیتم ها در ViewState می باشد.
دو راه برای اضافه کردن یا به روز رسانی یک آیتم در view state وجود دارد:
Syntax:
ViewState.Add(“string Key”,object value)
مثال:
ViewState.Add(“UserAddress”,txtAddress.Text)
syntax:
ViewState[“string Key”] = object value
مثال:
ViewState[“UserAddress”] = txtAddress.Text
بازیابی مقادیر از ViewState:
txtAddress.Text = (string)ViewState[“UserAddress”]
or
txtAddress.Text = ViewState[“UserAddress”].ToString();
txtAddress.Text = Convert.ToString(ViewState[“UserAddress”]);
حذف یک آیتم از ViewState:
ViewState.Remove(“UserAddress”)
حذف همه ی آیتم ها از ViewState:
ViewState.Clear
- ASP.net
- 1k بازدید
- 9 تشکر