Pergunta

Eu estou usando o aplicativo de exemplo asp.net MVC e expandiram-lo um pouco. Eu uso a associação asp.net para login e registro para os usuários.

Agora eu quero mudá-lo por isso, quando as pessoas se inscrever, em vez de instantaneamente ser capaz de login, ele vai para um estado em que um administrador tem de aprová-lo. Uma vez que esta aprovação acontece, então eles podem logar-se.

Existe alguma coisa construída em coisas associação asp.net que vai me ajudar a fazer isso ou eu tenho que código-lo a partir do zero usando minha própria implementação?

Eu tenho algumas idéias e eu não acho que isso é ciência de foguetes, mas eu não quero reinventar a roda, pois quero enviar este o mais rápido possível.

Foi útil?

Solução

A classe MembershipUser tem uma propriedade IsApproved. Você pode configurá-lo para false ao criar um novo usuário e, em seguida, defina-o como verdadeiro quando o administrador aprova o usuário. Você tem que chamar o método Membershi.UpdateUser (usuário) depois de definir a propriedade.

Outras dicas

Aqui está algum código para construir uma coleção de usuários aprovado-un que podem ser usados ??como fonte de dados de um controle de dados como um GridView, DataList, ou Repeater:

MembershipUserCollection users = Membership.GetAllUsers();

MembershipUserCollection unapprovedUsers = new MembershipUserCollection();

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

A classe MembershipUser tem um IsApproved propriedade, e durante a criação do usuário que você pode usar uma das sobrecargas no Membership. função CreateUser que permite que a bandeira a ser definido. Infelizmente não há nenhuma maneira fácil de dizer "Mostre-me a todos os usuários que ainda não estão validados".

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top