要实现ASP.Net Core MVC Web应用的角色管理,可以按照以下步骤进行操作:
创建一个新的ASP.Net Core MVC Web应用项目。
在项目中安装Microsoft.AspNetCore.Identity包,用于管理用户和角色。
在Startup.cs文件的ConfigureServices方法中配置Identity服务:
services.AddDbContext(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
services.AddDefaultIdentity()
.AddRoles()
.AddEntityFrameworkStores();
public class ApplicationDbContext : IdentityDbContext
{
public ApplicationDbContext(DbContextOptions options)
: base(options)
{
}
}
public class RoleController : Controller
{
private readonly RoleManager _roleManager;
public RoleController(RoleManager roleManager)
{
_roleManager = roleManager;
}
public IActionResult Index()
{
var roles = _roleManager.Roles.ToList();
return View(roles);
}
public IActionResult Create()
{
return View();
}
[HttpPost]
public async Task Create(string roleName)
{
if (!string.IsNullOrEmpty(roleName))
{
var roleExists = await _roleManager.RoleExistsAsync(roleName);
if (!roleExists)
{
var role = new IdentityRole(roleName);
await _roleManager.CreateAsync(role);
return RedirectToAction(nameof(Index));
}
}
return View();
}
public async Task Delete(string roleId)
{
var role = await _roleManager.FindByIdAsync(roleId);
if (role != null)
{
await _roleManager.DeleteAsync(role);
}
return RedirectToAction(nameof(Index));
}
}
至此,你已经完成了ASP.Net Core MVC Web应用的角色管理功能的搭建。可以通过访问Role/Index来查看角色列表,通过访问Role/Create来创建新的角色。