后台 DeleteRole 方法,基本和 DeleteUser 一样:

    1. [HttpPost]
    2. public async Task<IActionResult> DeleteRole(string id)
    3. {
    4. var role = await _roleManager.FindByIdAsync(id);
    5. if (role == null)
    6. {
    7. ViewBag.ErrorMessage = $"角色 Id {id} 的信息不存在,请重试。";
    8. return View("NotFound");
    9. }
    10. var result = await _roleManager.DeleteAsync(role);
    11. if (result.Succeeded)
    12. {
    13. return RedirectToAction("ListRoles");
    14. }
    15. foreach (var error in result.Errors)
    16. {
    17. ModelState.AddModelError("", error.Description);
    18. }
    19. return View("ListRoles");
    20. }

    删除角色的视图以及 JS 也和删除用户类似,此处不再贴出。

    现在存在的一个问题是,有的角色里面已经存在用户,但删除角色后那些用户依然存在,下一节讲解如何处理这种问题。