public async static Task InitDB(IServiceProvider service) { // 获取数据库上下文服务 var DB = service.GetRequiredService<EvaluateContext>(); // 获取UserManager服务 var userManager = service.GetRequiredService<UserManager<User>>(); // 获取RoleManager服务 var roleManager = service.GetRequiredService<RoleManager<IdentityRole>>(); if (DB.Database != null && DB.Database.EnsureCreated()) { // 初始化角色 await roleManager.CreateAsync(new IdentityRole { Name = "系主任" }); await roleManager.CreateAsync(new IdentityRole { Name = "组长" }); await roleManager.CreateAsync(new IdentityRole { Name = "学生" }); // 初始化系主任,并为其添加系主任角色 var user = new User { Name = "张某某", UserName = "******" }; await userManager.CreateAsync(user, "Yuuko19931101!@#"); await userManager.AddToRoleAsync(user, "系主任"); } }
public async Task<IActionResult> CreateStudent(string username, string password, string studentnumber, string Class, string group, string name, string position) { var user = new User { UserName = username, Group = group, Class = Class, Name = name, StudentNumber = studentnumber }; // 创建用户 var result = await UserManager.CreateAsync(user, password); // 如果没有成功,则返回错误信息 if (!result.Succeeded) return Content(result.Errors.First().Description); // 添加角色 await UserManager.AddToRoleAsync(user, "学生"); if (position == "组长") await UserManager.AddToRoleAsync(user, "组长"); return RedirectToAction("Student", "Home"); }