public async Task <IActionResult> Create( [Bind("Id,UserId,Comment,PhoneNumber,Password,Email,UserName,RoleId,")] LarryUser larryUser ) { if (ModelState.IsValid) { larryUser.Id = Guid.NewGuid(); var _CreatedUser = new IdentityUser { Email = larryUser.Email, EmailConfirmed = larryUser.EmailConfirmed, UserName = larryUser.UserName, }; await _userManager.CreateAsync( _CreatedUser, larryUser.Password ); larryUser.UserId = _CreatedUser.Id; await _context.AddAsync(larryUser); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(larryUser)); }
// GET: LarryUserManagement/LarryUser/Create public async Task <IActionResult> CreateAsync() { var _LarryUser = new LarryUser { RoleSelectListItems = await GetRoleSelectListItemsAsync() }; return(View(_LarryUser)); }
public async Task <IActionResult> Edit(Guid id, [Bind("Id,UserId,Comment,PhoneNumber,Password,Email,UserName,RoleId,")] LarryUser larryUser) { if (id != larryUser.Id) { return(NotFound()); } if (ModelState.IsValid) { if (!await _context.Roles.AnyAsync(p => p.Id == larryUser.RoleId)) { return(NotFound()); } if (LarryUserExists(id)) { try { var _UserId = await _context.LarryUsers.Where(p => p.Id == id).Select(p => p.UserId).FirstOrDefaultAsync(); var _User = await _context.Users.Where(p => p.Id == _UserId).FirstOrDefaultAsync(); _User.Email = larryUser.Email; _User.PhoneNumber = larryUser.PhoneNumber; _User.NormalizedEmail = larryUser.Email.ToUpper(); _User.UserName = larryUser.UserName; var _RoleName = await _context.Roles.Where(p => p.Id == larryUser.RoleId).Select(p => p.Name).FirstOrDefaultAsync(); if (!await _context.UserRoles.AnyAsync(p => p.UserId == _UserId)) { await _userManager.AddToRoleAsync( _User, _RoleName ); } else { var UserRole = await _context.UserRoles.Where(p => p.UserId == _UserId).FirstOrDefaultAsync(); UserRole.RoleId = larryUser.RoleId; } await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!LarryUserExists(larryUser.Id)) { return(NotFound()); } else { throw; } } } else { larryUser.Id = Guid.NewGuid(); var _CreatedUser = new IdentityUser { Email = larryUser.Email, EmailConfirmed = larryUser.EmailConfirmed, UserName = larryUser.UserName, }; await _userManager.CreateAsync( _CreatedUser, larryUser.Password ); larryUser.UserId = _CreatedUser.Id; var _RoleName = await _context.Roles.Where(p => p.Id == larryUser.RoleId).Select(p => p.Name).FirstOrDefaultAsync(); if (!await _context.UserRoles.AnyAsync(p => p.UserId == _CreatedUser.Id)) { await _userManager.AddToRoleAsync( _CreatedUser, _RoleName ); } else { var UserRole = await _context.UserRoles.Where(p => p.UserId == _CreatedUser.Id).FirstOrDefaultAsync(); UserRole.RoleId = larryUser.RoleId; } await _context.AddAsync(larryUser); } await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } larryUser.RoleSelectListItems = await GetRoleSelectListItemsAsync(); return(View(larryUser)); }