播种 - 添加用户角色
Seeding - Adding user roles
我最近选择了 c#,但我一直坚持添加用户角色和管理员。虽然我已经能够添加角色(seedroles,但我似乎无法添加管理员(seeduser)。
当我将鼠标悬停在“管理员”参数上时,我尝试添加管理员角色,它说“无法从字符串转换为 systems.collections.generic.IEnumerable
using Microsoft.AspNetCore.Identity;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
namespace leave_management
{
public static class SeedData
{
public static void Seed(UserManager<IdentityUser> userManager, RoleManager<IdentityRole> roleManager)
{
SeedRoles(roleManager);
SeedUsers(userManager);
}
private static void SeedUsers(UserManager<IdentityUser> userManager)
{
if (userManager.FindByNameAsync("admin").Result == null)
{
var user = new IdentityUser
{
UserName = "admin@localhost.com",
Email = "admin@localhost.com",
};
var result = userManager.CreateAsync(user, "@password1").Result;
if (result.Succeeded)
{
//THis is where the error is at
userManager.AddToRolesAsync(user, "Administrator").Wait();
}
}
}
private static void SeedRoles(RoleManager<IdentityRole> roleManager)
{
if (!roleManager.RoleExistsAsync("Administrator").Result)
{
var role = new IdentityRole
{
Name = "Administrator"
};
var result = roleManager.CreateAsync(role).Result;
}
if (!roleManager.RoleExistsAsync("Employee").Result)
{
var role = new IdentityRole
{
Name = "Employee"
};
var result = roleManager.CreateAsync(role).Result;
}
}
}
}
当我将鼠标悬停在“管理员”参数上时,我尝试添加管理员角色,它说“无法从字符串转换为 systems.collections.generic.IEnumerable
您正在尝试将字符串传递给需要可枚举字符串的对象。你不能那样做。如果需要,将字符串放入集合中。
new string[] {administrator};
我最近选择了 c#,但我一直坚持添加用户角色和管理员。虽然我已经能够添加角色(seedroles,但我似乎无法添加管理员(seeduser)。
当我将鼠标悬停在“管理员”参数上时,我尝试添加管理员角色,它说“无法从字符串转换为 systems.collections.generic.IEnumerable
using Microsoft.AspNetCore.Identity;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
namespace leave_management
{
public static class SeedData
{
public static void Seed(UserManager<IdentityUser> userManager, RoleManager<IdentityRole> roleManager)
{
SeedRoles(roleManager);
SeedUsers(userManager);
}
private static void SeedUsers(UserManager<IdentityUser> userManager)
{
if (userManager.FindByNameAsync("admin").Result == null)
{
var user = new IdentityUser
{
UserName = "admin@localhost.com",
Email = "admin@localhost.com",
};
var result = userManager.CreateAsync(user, "@password1").Result;
if (result.Succeeded)
{
//THis is where the error is at
userManager.AddToRolesAsync(user, "Administrator").Wait();
}
}
}
private static void SeedRoles(RoleManager<IdentityRole> roleManager)
{
if (!roleManager.RoleExistsAsync("Administrator").Result)
{
var role = new IdentityRole
{
Name = "Administrator"
};
var result = roleManager.CreateAsync(role).Result;
}
if (!roleManager.RoleExistsAsync("Employee").Result)
{
var role = new IdentityRole
{
Name = "Employee"
};
var result = roleManager.CreateAsync(role).Result;
}
}
}
}
当我将鼠标悬停在“管理员”参数上时,我尝试添加管理员角色,它说“无法从字符串转换为 systems.collections.generic.IEnumerable
您正在尝试将字符串传递给需要可枚举字符串的对象。你不能那样做。如果需要,将字符串放入集合中。
new string[] {administrator};