public async Task <IActionResult> Edit(long id, [Bind("IdAdministrateur,Nom,Prenom,UtilisateurId")] Model.Administrateur Administrateur) { if (id != Administrateur.IdAdministrateur) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(Administrateur); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!AdministrateurExists(Administrateur.IdAdministrateur)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(Administrateur)); }
public async Task <IActionResult> OnPostAsync() { this.Matieres = await _db.Matiere.ToListAsync(); if (ModelState.IsValid) { var user = new Utilisateur { UserName = Input.Email, Email = Input.Email, datenaissance = Input.Datenaissance, statut = Input.Statut }; var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { var createduser = await _context.Aspnetusers.Where(s => s.Id == user.Id) .FirstOrDefaultAsync(); if (Input.Statut == "prof") { var professeur = new Model.Professeur { Nom = Input.Nom, Prenom = Input.Prenom, Dateembauche = Input.DateEmbauche, UtilisateurId = createduser.Id, Matericule = Input.Matricule, MatiereId = Input.MatiereId }; _context.Professeur.Add(professeur); await _context.SaveChangesAsync(); if (!await _rolemanager.RoleExistsAsync(RoleManagement.Adminuser)) { await _rolemanager.CreateAsync(new IdentityRole(RoleManagement.Adminuser)); } if (!await _rolemanager.RoleExistsAsync(RoleManagement.Profuser)) { await _rolemanager.CreateAsync(new IdentityRole(RoleManagement.Profuser)); } await _userManager.AddToRoleAsync(user, RoleManagement.Profuser); } else { var administrateur = new Model.Administrateur { Nom = Input.Nom, Prenom = Input.Prenom, UtilisateurId = createduser.Id }; _context.Administrateur.Add(administrateur); await _context.SaveChangesAsync(); if (!await _rolemanager.RoleExistsAsync(RoleManagement.Adminuser)) { await _rolemanager.CreateAsync(new IdentityRole(RoleManagement.Adminuser)); } if (!await _rolemanager.RoleExistsAsync(RoleManagement.Profuser)) { await _rolemanager.CreateAsync(new IdentityRole(RoleManagement.Profuser)); } await _userManager.AddToRoleAsync(user, RoleManagement.Adminuser); } } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } // If we got this far, something failed, redisplay form return(Page()); }