title: FormsAuthentication isn't preserving the UserData field after Postback in .NET 3.5
body: <p>I've created a <code>FormsAuthenticationTicket</code> from scratch, but found that when retrieving it at a later time, the <code>UserData</code> isn't coming back. Here is the code used:</p>
  
  <pre><code>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);
  </code></pre>
  
  <p>However, when reading this back on the next <code>Request</code>, I found that the <code>UserData</code> field is now empty:</p>
  
  <pre><code>string encryptedCookie = Request.Cookies[ FormsAuthentication.FormsCookieName ].Value;
  FormsAuthenticationticket ticket = FormsAuthentication.Decrypt(encryptedCookie);
  Assert.IsTrue( ticket.UserData.Length == 0 ); //TRUE!
  </code></pre>
  
  <p>Any ideas?</p>