Создание пользовательских ролей mvc3 - PullRequest
1 голос
/ 16 января 2012

Я создаю приложение MVC3, где пользователь может быть либо администратором, либо элементом ввода данных, поэтому мне нужно использовать роль в аутентификации пользователя, которую предлагает MVC. Поэтому в своей регистрационной форме я добавил

                    <%=  
                           Html.DropDownList("RoleName", new SelectListItem[]{ 
                           new SelectListItem{ Text= "Admin", Value="admin"},
                           new SelectListItem{ Text= "Data Entry", Value="data"}
                    }) %>

И я изменил контроллер регистра следующим образом:

if (createStatus == MembershipCreateStatus.Success)
                {
                    Roles.AddUserToRole(model.UserName, "RoleName");
                    FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */);
                    return RedirectToAction("Index", "Home");
                }

Теперь, когда я регистрируюсь, я получаю следующую ошибку: Роль "не найдена.

Спасибо ...

1 Ответ

0 голосов
/ 16 января 2012

Взгляните на определение для Roles.AddUserToRole() метода здесь . Вы жестко прописываете «RoleName» для второго параметра, который должен выступать в роли, к которой добавляется пользователь.

То, что вы хотите сделать, это извлечь выбранное значение из вашего DropDownList и использовать эту строку в вашем вызове метода Roles.AddUserToRole().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...