آموزش ASP.Net > کار با شی Session > مرور کلی بر شی Session در ASP.Net
مقدمه :
از شی Session State برای ذخیره و بازیابی اطلاعات و مقادیر هر کاربر در صفحه استفاده
می شود .
شی Session State در ASP.Net این امکان را به شما می دهد تا اطلاعات مورد نظر خود را
به ازای هر کاربر ، در هنگام حرکت بین صفحات وب پروژه خود ذخیره و بازیابی نمایید .
پروتکل HTTP ، یک پروتکل ناپایدار است . این بدان معناست که سرور هر درخواست HTTP را
به صورت یک در خواست مستقل پردازش می کند . سرور اطلاعی راجع به متغیرها و اطلاعاتی
که در درخواست های قبلی استفاده شده اند ، ندارد .
Session ها در ASP.Net ، در خواست های ارسالی از سوی یک مرورگر را تا زمانی که پنجره
مرورگر آن باز و اکتیو بوده ، شناسایی نموده و سپس اطلاعات لازم و مرتبط با آنها را
در اختیارشان قرار می دهد . به صورت پیش فرض ، خاصیت Session برای تمام ابزارهای ASP.Net
فعال است .
نحوه تعریف و استفاده از متغیرهای Session :
متغیرهای Session درون شی SessionStateItemCollection که توسط خاصیت HttpContext.Session
تولید شده ، نگهداری می شوند .
در یک صفحه ASP.Net ، متغیرهای Session از طریق خاصیت Session شی Page ، قابل دسترسی
و ایجاد هستند .
برای تعریف یک متغیر Session ، باید یک نام یکتا و مقداری جهت آن تعیین نمایید . مثال
زیر نحوه تعریف و مقداردهی دو متغیر Session در صفحه را نمایش می دهد.
مثال : در مثال زیر دو شی Session به نام های FirstName و LastName
تعریف کرده ایم ، که هر کدام مقدار خود را از یک کادر متن دریافت می کند :
|
VB کد
|
Session("FirstName") = FirstNameTextBox.Text
Session("LastName") = LastNameTextBox.Text
|
|
C# کد
|
Session["FirstName"] = FirstNameTextBox.Text;
Session["LastName"] = LastNameTextBox.Text;
|
متغیرهای Session می توانند از هر نوع داده ای معتبر NET. باشند . مثال دوم زیر ، یک
شی آرایه ای به نام ArrayList را به عنوان متغیر Session ایجاد کرده ، که متغیرهای
قیمت StockPrice را درون خود نگهداری می کند .
|
VB کد
|
'دریافت یکی کنید ، حتما نوع داده ای آن را به نوع مناسب
تغییر دهید Session هنگامی که متغیری را از شی
Dim stockPicks As ArrayList = CType(Session("StockPicks"), ArrayList)
' مجددا اطلاعات را در شی وارد نمایید
Session("StockPicks") = stockPicks
|
|
C# کد
|
'دریافت یکی کنید ، حتما نوع داده ای آن را به نوع مناسب
تغییر دهید Session هنگامی که متغیری را از شی
ArrayList stockPicks = (ArrayList)Session["StockPicks"];
' مجددا اطلاعات را در شی وارد نمایید
Session["StockPicks"] = stockPicks;
|
نکته کاربردی : هنگام خواندن یا تعیین یک متغیر Session ، حتما به
وسیله دستور لازم ، نوع داده ای آن را با داده ورودی یا خروجی هماهنگ کنید .
مقلا اگر داده ورودی از نوع متن است ، با دستور ( ) toString ، آن را به رشته تبدیل
نمایید .
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1
حمایت نمایید :