public ActionResult RecupAccount(RecupAccountModel model) { // On vérifie que les deux champs sont remplis if (ModelState.IsValid) { using (UsersContext context = new UsersContext()) { // Si on trouve un compte qui match avec les infos entrées par l'utilisateur... if (context.UserProfiles.Any( u => u.UserName.Equals(model.UserName, StringComparison.OrdinalIgnoreCase) && u.Email.Equals(model.Email, StringComparison.OrdinalIgnoreCase))) { // On crée un token permettant de réinitialiser le mot de passe ... string token = WebSecurity.GeneratePasswordResetToken(model.UserName, 5); // ... et on l'envoit à l'utilisateur par email MailingService mailingService = new MailingService(); mailingService.SendTokenByEmail(token, model.Email, model.UserName); return(View("RecupAccountConfirmed")); } else { ModelState.AddModelError("", "Username or password are wrong."); } } } return(View(model)); }