ورود

View Full Version : خالی کردن مقدار HttpContext.Current.User.Identity.Name



resident
چهارشنبه 30 اردیبهشت 1394, 08:51 صبح
سلام.
نت اول برنامم userid رو میذارم تو HttpContext.Current.User.Identity.Name
وقتی logout می کنم و با user دیگه ای وارد میشم، HttpContext.Current.User.Identity.Name در بعضی مواقع همچنان مقدار userid قیلی رو داره.
چطور میشه موقع logout کاربر، مقدار HttpContext.Current.User.Identity.Name رو خالی کنم؟

Hamid2547
چهارشنبه 30 اردیبهشت 1394, 10:10 صبح
سلام.
نت اول برنامم userid رو میذارم تو HttpContext.Current.User.Identity.Name
وقتی logout می کنم و با user دیگه ای وارد میشم، HttpContext.Current.User.Identity.Name در بعضی مواقع همچنان مقدار userid قیلی رو داره.
چطور میشه موقع logout کاربر، مقدار HttpContext.Current.User.Identity.Name رو خالی کنم؟
باید کد رو بذارید اینجا تا بشه بهتر نظر داد، برای ساین اوت از چی استفاده میکنید؟ ایا از "FormsAuthentication.SignOut()" موقعی که لاگ اوت می کنید استفاده کردید؟

resident
چهارشنبه 30 اردیبهشت 1394, 10:17 صبح
باید کد رو بذارید اینجا تا بشه بهتر نظر داد، برای ساین اوت از چی استفاده میکنید؟ ایا از "FormsAuthentication.SignOut()" موقعی که لاگ اوت می کنید استفاده کردید؟

تو sign out فقط کش و سشن های مربوط به اون کاربر رو خالی می کنم.
از FormsAuthentication.SignOut() هم استفاده نمی کنم.

تو لاگین هم از کد زیر استفاده می کنم.

FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, authenticatedUser.Id.ToString(), DateTime.Now, DateTime.Now.AddDays(1), false, authenticatedUser.Id.ToString());
string cookieData = FormsAuthentication.Encrypt(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, cookieData)
{
HttpOnly = true,
Expires = ticket.Expiration
};

System.Web.HttpContext.Current.Response.Cookies.Ad d(cookie);