Как проверить / назначить роли пользователя сразу после входа в систему? - PullRequest
0 голосов
/ 08 августа 2011

Для моего приложения, когда пользователь входит в систему, мне нужно проверить, назначены ли ему какие-либо роли и не назначают ли они ему основную роль. Кроме того, исходя из их роли, я должен перенаправить их на определенные страницы. Но я не могу найти способ проверить / установить роли пользователей при входе в систему.

    [HttpPost]
    public ActionResult LogOn(LogOnModel model, string returnUrl)
    {
        if (ModelState.IsValid)
              {
               if (MembershipService.ValidateUser(model.UserName, model.Password))
                 {
                      FormsService.SignIn(model.UserName, model.RememberMe);
                     if(User.IsInRole("User")) 
//This won't work becauser User is not populated yet. It will be populated only on next request for some reason that has to do with setting cookies
    }

Есть идеи, как это решить?

Ответы [ 2 ]

0 голосов
/ 08 августа 2011

Видимо, метод Roles.IsUserInRole позволяет передавать строку как имя пользователя, поэтому он позволяет проверять членство пользователей без вызова объекта User.

0 голосов
/ 08 августа 2011

Как-то так?

if(User.IsInRole(model.UserName, "User")) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...