AspNet.Identity управление ролями

Я использую приложение Asp.net 4.5.1 webForm с EF codefirst. для аутентификации я использую Microsoft.AspNet.Identity. Я хочу перейти на страницу журнала после того, как проверю, что пользователь верен, а также проверил роль пользователя. если пользователь находится в роли администратора, отправьте пользователя в папку администратора (страницу) или, если пользователь в роли пользователя, отправьте пользователя в папку пользователей (страницу). как я могу проверить, находится ли пользователь в роли администратора или нет?

это мой код для входа:

protected void btnLogin_Click(object sender, EventArgs e)
    {
        if (IsValid)
        {
            // Validate the user password
            var manager = new UserManager();
            ApplicationUser user = manager.Find(inputEmail.Text, inputPassword.Text);
            if (user != null)
            {
                IdentityHelper.SignIn(manager, user, false);

                if (//user is in admin role)
                {
                    Response.Redirect("UserPage");
                }
                else
                {
                    Response.Redirect("AdminPage");
                }


            }
            else
            {
                //Show error message that User is Incorrect
            }
        }
    }

person user3125254    schedule 21.12.2013    source источник


Ответы (1)


Попробуйте использовать UserManager.IsInRole(User.Identity.GetUserId(), "RoleName")

Кроме того, обратитесь к: Понимание IsInRole с регистром символов

Совет: попробуйте изучить любую сборку в «Обозревателе объектов» (Ctrl + Alt + J) в Visual Studio.

person jd4u    schedule 21.12.2013