Problemi con i controlli di accesso di asp.net (es. LoginStatus ) in combinazione con l'UrlRewriting ?

Ecco la soluzione :

protected override void OnLoad(EventArgs e)
{
// Set Logout Action and Url
  this.LoginStatus1.LogoutPageUrl = Context.Request.Url.AbsolutePath;
  this.LoginStatus1.LogoutAction = LogoutAction.Redirect;

  // If User not authenticated we change LoginStatus PostBackUrl manually
  if (!Page.User.Identity.IsAuthenticated)
  {
   String loginUrl = FormsAuthentication.LoginUrl + "?ReturnUrl=" + Context.Request.Url.AbsolutePath;
   foreach (Control c in this.LoginStatus1.Controls)
   {
    if (c is ImageButton)
    {
     ((ImageButton)c).PostBackUrl = loginUrl;
    }
    if (c is LinkButton)
    {
     ((LinkButton)c).PostBackUrl = loginUrl;
    }
   }
  }
  base.OnLoad(e);
}

 

fonte