1
여기에서 게시물을 살펴보면 Entity Framework 시드를 통해 ASP.NET ID 역할을 만드는 두 가지 방법을 보았습니다. 한 가지 방법은 RoleManager
을 사용하고 다른 하나는 RoleStore
을 사용합니다. 나는 둘 사이에 차이가 있는지 궁금해했다. 후자를 사용하면 덜 초기화되는 것을 피할 수 있습니다.시드 역할 (RoleManager vs RoleStore)
string[] roles = { "Admin", "Moderator", "User" };
// Create Role through RoleManager
var roleStore = new RoleStore<IdentityRole>(context);
var manager = new RoleManager<IdentityRole>(roleStore);
foreach (string role in roles)
{
if (!context.Roles.Any(r => r.Name == role))
{
manager.Create(new IdentityRole(role));
}
// Create Role through RoleStore
var roleStore = new RoleStore<IdentityRole>(context);
foreach (string role in roles)
{
if (!context.Roles.Any(r => r.Name == role))
{
roleStore.CreateAsync(new IdentityRole(role));
}
}