PDA

View Full Version : اضافه کردن آیتم به کوکی هنگام Login توسط WebSecurity



Wily_Fox
دوشنبه 18 شهریور 1392, 13:26 عصر
با سلام و خسته نباشید

آیا امکانش هست هنگام Login کوکی که توسط WebSecurity.Login ذخیره میشه آیتم های دیگری هم بهش اضافه کنیم.

مثلا: UserId, FirstName, LastName و چند آیتم دیگر رو هم اضافه کنیم.

در صورت بلی آیا میشه آیتم های دیگری رو هم بعنوان پارامتر بهش ارسال کنیم؟

یعنی چند آیتم دیگر رو هم از یه مدل دیگه (بجز UserProfile) بخونیم و بهش ارسال کنیم و همه در یک لحظه ذخیره کنیم؟


در صورت خیر. لطفا ایجاد کوکی رو با یه مثالی توضیح دهید.

متشکرم

hakim22
دوشنبه 18 شهریور 1392, 16:18 عصر
اگر منظور شما استفاده از

FormsAuthentication.SetAuthCookie(userName, true);


است به طوری که بشه بجای username یک userAccount که یک شی است درون کوکی ذخیره کنیم اینکار ممکن است.
روش کلی کار extend کردن متد SetAuthCookie است به طوری که آرگومان های بیشتری بگیرد و به همراه کوکی ذخیره کند.

public static int SetAuthCookie<T>(this HttpResponseBase responseBase, string name, bool rememberMe, T userData)

Wily_Fox
دوشنبه 18 شهریور 1392, 17:19 عصر
هنگام login کردن در AccountController دستوری داریم به این شکل:


WebSecurity.Login(model.UserName.ToLower(), model.Password, persistCookie: model.RememberMe))

من منظورم در این قسمت بود.