public async Task <IActionResult> EditRole(int id) { UpdateApplicationRoleDto applicationRoleToUpdate = await _roleManager.Roles.Where(r => r.Id == id) .Select(r => new UpdateApplicationRoleDto { Description = r.Description, DisplayName = r.DisplayName, Name = r.Name, RoleId = r.Id }) .FirstOrDefaultAsync(); if (applicationRoleToUpdate is null) { ViewBag.ErrorMessage = "سطح دسترسی مورد نظر وجود ندارد."; return(View("NotFound")); } return(View(applicationRoleToUpdate)); }
public async Task <IActionResult> EditRole(UpdateApplicationRoleDto dto, [FromServices] ApplicationContext _db) { if (ModelState.IsValid) { ApplicationRole applicationRoleToUpdate = await _roleManager.FindByIdAsync(dto.RoleId.ToString()); if (applicationRoleToUpdate is null) { return(NotFound()); } applicationRoleToUpdate.Name = dto.Name; applicationRoleToUpdate.DisplayName = dto.DisplayName; applicationRoleToUpdate.Description = dto.Description; applicationRoleToUpdate.ConcurrencyStamp = Guid.NewGuid().ToString(); await _roleManager.UpdateNormalizedRoleNameAsync(applicationRoleToUpdate); await _db.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(dto)); }