PDA

View Full Version : سوال: حذف اطلاعات session



baran_mehr
چهارشنبه 12 خرداد 1389, 10:24 صبح
سلام به همه ی دوستان گل
برای حذف اطلاعات session استفاده از این دو دستور مناسبه؟ یا راه بهتری وجود داره؟

Session.Clear()
Session.Remove()

Mostafa_Dindar
چهارشنبه 12 خرداد 1389, 10:50 صبح
از
public void Remove(
string name
)


براي Remove كردن يك Session خاص كه نام اون رو به صورت پارامتر پاس ميدين استفاده ميشه ، ضمن اينكه اگر اون نامي كه شما بعنوان پارامتر ارسال ميكنيد وجود نداشته باشه باعث Raise شدن Error نميشه .

در حالي كه

public void Clear()

همه Key و Value ها رو از بين ميبره .

تفاوت مشهود هست

سربلند باشيد

baran_mehr
چهارشنبه 12 خرداد 1389, 11:23 صبح
پس در واقع Session.Clear() کار removeall رو میکنه

Peyman.Gh
چهارشنبه 12 خرداد 1389, 18:43 عصر
Session.Remove(string name);

kooshanakhai
چهارشنبه 12 خرداد 1389, 19:09 عصر
توصیه می کنم برای ختم جلسه از Abandon استفاده کن.مثلا در هنگام Logout کاربر.

Session.Abandon();

Mostafa_Dindar
چهارشنبه 12 خرداد 1389, 19:35 عصر
توصیه می کنم برای ختم جلسه از Abandon استفاده کن.مثلا در هنگام Logout کاربر.

Session.Abandon();

كاملا درسته ، تفاوت عمده اي كه Session.Clear() و Session.Abandon() دارد در اين هست كه متد Clear همه Key & Value ها رو در Session State Collection از بين ميبره

در حالي كه Abandon تمام آبجكتهاي قرار گرفته در Session رو از بين ميبره .

در حالت اول Session_Id از بين نميره ، ولي در حالت دوم از بين ميره . ( پس وقتي كاربر لاگ اوت ميكنه ديگه لازم نيست شناسه سشن اون رو نگه داريم )

به زبان ساده حالت اول مثل اين هست كه كتابهاي قفسه يك كتابخانه رو خالي كنيد و حالت دوم مثل اين هست كه كل قفسه رو نابود كنيد .


سربلند باشيد