title: IsInRole returns False at LogOn but True later in MVC2
body: <p>In MVC2, I am running into a situation where my HttpContext.User.IsInRole(xxx) check immediately after calling FormsService.SignIn returns false, but in a subsequent call to Page.User.IsInRole(xxx) returns true, which is correct.  Can't figure out what's going on.  Here's the code:</p>
  
  <p>Account Controller:</p>
  
  <pre><code>if (MembershipService.ValidateUser(model.UserName, model.Password))
  {
      FormsService.SignIn(model.UserName, model.RememberMe);
  
      if (HttpContext.User.IsInRole("Teacher")) //returns false, even when true
      {
           //set up custom user object
      }
      else
      {
           //set standard user object
      }
  
      ....
  }
  </code></pre>
  
  <p>Subsequent View:</p>
  
  <pre><code>  &lt;%
          var teacher = Page.User.IsInRole("Teacher"); //returns true
      %&gt;
  </code></pre>
  
  <p>Config:</p>
  
  <pre><code>&lt;roleManager enabled="true" defaultProvider="MySqlRoleProvider" cacheRolesInCookie="false" createPersistentCookie="false" cookieProtection="All"&gt;
    &lt;providers&gt;
      &lt;clear /&gt;
      &lt;add applicationName="myapp" connectionStringName="ApplicationServices" name="MySqlRoleProvider" type="System.Web.Security.SqlRoleProvider" /&gt;
    &lt;/providers&gt;
  &lt;/roleManager&gt;
  </code></pre>
  
  <p>Have tried w/cacheRolesInCookie true and false, makes no difference.</p>
  
  <p>What am I missing?</p>
  
  <p>Thanks for any ideas!</p>