예제 #1
0
        public async Task OnGetAsync(string id)
        {
            Input = new DeleteInputMdl {
                Id = id
            };

            var role = await _roleManager.FindByIdAsync(id);

            Input.Name = role.Name;

            Input.AllowDelete = !_dbContext.AspNetUserRoles.Where(r => r.RoleId == id).Any();
        }
예제 #2
0
        public async Task <IActionResult> Delete(string id)
        {
            var model = new DeleteInputMdl {
                Id = id
            };

            var role = await _roleManager.FindByIdAsync(id);

            model.Name = role.Name;

            var numUsers = _dbContext.AspNetUserRoles.Where(r => r.RoleId == id).Count();

            model.AllowDelete = numUsers == 0;

            return(View(model));
        }
예제 #3
0
        public async Task <IActionResult> Delete(DeleteInputMdl model)
        {
            var role = await _roleManager.FindByIdAsync(model.Id);

            var result = await _roleManager.DeleteAsync(role);

            if (!result.Succeeded)
            {
                foreach (var error in result.Errors)
                {
                    ModelState.AddModelError("", error.Description);
                }
                return(View(model));
            }

            return(RedirectToAction("Index"));
        }