// GET: Home Page Options public IActionResult CreatePersonalTrainerView() { CreatePersonalTrainerViewModel createPersonalTrainerViewModel = new CreatePersonalTrainerViewModel() { IdentityUser = new Microsoft.AspNetCore.Identity.IdentityUser(), PersonalTrainer = new PersonalTrainer(), IdentityUserRole = new IdentityUserRole <string>() }; return(View()); }
public async Task <IActionResult> CreatePersonalTrainerView(CreatePersonalTrainerViewModel model, IdentityUser identityUser) { if (ModelState.IsValid) { Guid guid = Guid.NewGuid(); var hasher = new PasswordHasher <IdentityUser>(); var role = _context.Roles.Where(r => r.Name == "Personal Trainer").FirstOrDefault(); identityUser = new Microsoft.AspNetCore.Identity.IdentityUser { Id = guid.ToString(), Email = model.IdentityUser.Email, UserName = model.IdentityUser.Email, NormalizedEmail = model.IdentityUser.Email.ToUpper(), NormalizedUserName = model.IdentityUser.Email.ToUpper(), PasswordHash = hasher.HashPassword(null, model.IdentityUser.PasswordHash) }; PersonalTrainer personalTrainer = new PersonalTrainer { UserId = guid.ToString(), FirstName = model.PersonalTrainer.FirstName, LastName = model.PersonalTrainer.LastName }; IdentityUserRole <string> identityUserRole = new Microsoft.AspNetCore.Identity.IdentityUserRole <string> { UserId = guid.ToString(), RoleId = role.Id }; _context.Add(identityUserRole); _context.Add(identityUser); _context.Add(personalTrainer); await _context.SaveChangesAsync(); return(View("Home")); } ; ViewData["UserId"] = new SelectList(_context.PersonalTrainers, "Id", "Id", model.PersonalTrainer.UserId); return(View()); }