Вопрос

Я использую пример приложения asp.net mvc и немного его расширил. Я использую членство asp.net для входа и регистрации пользователей.

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

Есть ли что-то встроенное в членство в asp.net, которое поможет мне это сделать, или мне придется кодировать его с нуля, используя мою собственную реализацию?

У меня есть несколько идей, и я не думаю, что это ракетостроение, но я не хочу изобретать велосипед, поскольку хочу отправить его как можно скорее.

Это было полезно?

Решение

Класс MembershipUser имеет свойство IsApproved. Вы можете установить его в false при создании нового пользователя, а затем установить его в true, когда администратор одобрит пользователя. Вы должны вызвать метод Membershi.UpdateUser (user) после установки свойства.

Другие советы

Вот некоторый код для создания коллекции неподтвержденных пользователей, которую можно использовать в качестве источника данных элемента управления данными, такого как GridView , DataList или Ретранслятор :

MembershipUserCollection users = Membership.GetAllUsers();

MembershipUserCollection unapprovedUsers = new MembershipUserCollection();

foreach (MembershipUser u in users)
{
    if (!u.IsApproved)
        unapprovedUsers.Add(u);
}

Класс MembershipUser имеет IsApproved , и при создании пользователя вы можете использовать одну из перегрузок в членстве. CreateUser функция, которая позволяет установить этот флаг. К сожалению, нет простого способа сказать "Показать всех пользователей, которые еще не прошли проверку".

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top