FormsAuthentication no conserva el campo UserData después de Postback en .NET 3.5
He creado unFormsAuthenticationTicket
desde cero, pero descubrí que al recuperarlo más tarde, elUserData
no va a volver Aquí está el código utilizado:
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
1,
user.UserId,
DateTime.Now,
DateTime.MaxValue,
false,
user.UserType);
HttpCookie cookie = new HttpCookie(
FormsAuthentication.FormsCookieName,
FormsAuthentication.Encrypt(ticket));
Response.Cookies.Add(cookie);
Sin embargo, al leer esto en la próximaRequest
, Encontré que elUserData
el campo ahora está vacío:
string encryptedCookie = Request.Cookies[ FormsAuthentication.FormsCookieName ].Value;
FormsAuthenticationticket ticket = FormsAuthentication.Decrypt(encryptedCookie);
Assert.IsTrue( ticket.UserData.Length == 0 ); //TRUE!
¿Algunas ideas?