public virtual async Task <ActionResult> Edit(EditRoleViewModel viewModel) { if (_roleManager.ChechForExisByName(viewModel.Name, viewModel.Id)) { this.AddErrors("Name", "این گروه قبلا در سیستم ثبت شده است"); } if (!ModelState.IsValid) { ViewBag.ErrorMessage = "لطفا فیلد های مورد نظر را با دقت وارد کنید"; PopulatePermissions(viewModel.PermissionNames); return(View(viewModel)); } var dbRole = await _roleManager.FindByIdAsync(viewModel.Id); if (dbRole == null) { return(HttpNotFound()); } if (!await _roleManager.EditRole(viewModel)) { ViewBag.ErrorMessage = "لطفا برای گروه کاربری مورد نظر ، دسترسی تعیین کنید"; PopulatePermissions(); return(View(viewModel)); } await _unitOfWork.SaveChangesAsync(); ViewBag.Message = "عملیات ویرایش گروه کاربری با موفقیت انجام شد"; return(RedirectToAction("Index", "Role")); }