asp.net Управление входом и зарегистрированный пользователь в global.asax

Возможный дубликат:
.NET Application_BeginRequest - Как получить ссылку пользователя?

У меня проблема с моим контролем входа asp. Я установил режим проверки подлинности с помощью форм в своем файле web.config и хочу получить зарегистрированные данные пользователя в методе global.asax -> Application_BeginRequest.

Фрагмент кода .aspx:

  <asp:Login OnAuthenticate="Login1_Authenticate" ID="LoginUser" runat="server">
     [...]
  </asp:Login>

    protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
    {
        if (Membership.ValidateUser(LoginUser.UserName, LoginUser.Password))
        {
            FormsAuthentication.SetAuthCookie(LoginUser.UserName, LoginUser.RememberMeSet);
        }
    }

Фрагмент кода global.asax

    protected void Application_BeginRequest(object sender, EventArgs e)
    {
        var usr = HttpContext.Current.User;
    }

свойство HttpContext.Current.User равно null - почему?


person Tony    schedule 15.11.2011    source источник


Ответы (1)


Хм... потому что пользователь еще не аутентифицирован? Application_BeginRequest вызывается в самом начале запроса, до того, как произойдет что-либо еще, например проверка аутентификационного файла cookie.

Зачем это нужно делать в BeginRequest?

person Erik Funkenbusch    schedule 15.11.2011