Тип сущности IdentityRole не является частью модели для текущего контекста (MVC Role Manager)

Я довольно новичок в MVC. Я работаю ролевым менеджером. Перед этим я изменил тип данных идентификатора пользователя на int из строки. Теперь я хотел бы иметь роли на моем сайте. Я создал страницу и добавил код для запуска этой части. После запуска веб-сайта, когда я нажимаю на Создать новую роль пользователя, я получаю эту ошибку ниже в фоновом режиме. Вот мой код:

private List<SelectListItem> GetAllRolesAsSelectList()
    {
        List<SelectListItem> SelectRoleListItems =
            new List<SelectListItem>();

        var roleManager =
            new RoleManager<IdentityRole>(
                new RoleStore<IdentityRole>(new ApplicationDbContext()));

        var colRoleSelectList = roleManager.Roles.OrderBy(x => x.Name).ToList();

        SelectRoleListItems.Add(
            new SelectListItem
            {
                Text = "Select",
                Value = "0"
            });

        foreach (var item in colRoleSelectList)
        {
            SelectRoleListItems.Add(
                new SelectListItem
                {
                    Text = item.Name.ToString(),
                    Value = item.Name.ToString()
                });
        }

        return SelectRoleListItems;
    }

Это строка, где выдается ошибка

var roleManager =
                new RoleManager<IdentityRole>(
                    new RoleStore<IdentityRole>(new ApplicationDbContext()));

Вот мой код страницы IdentityModel:

public class CustomUserRole : IdentityUserRole<int> 
{
}
public class CustomUserClaim : IdentityUserClaim<int> 
{ 
}
public class CustomUserLogin : IdentityUserLogin<int> 
{
}
public class CustomRole : IdentityRole<int, CustomUserRole>, IRole<int>
{
    public CustomRole() : base() { }
    public CustomRole(string name) 
        : this()
    { 
        this.Name = name; 
    }
}
public class CustomUserStore : UserStore<ApplicationUser, CustomRole, int,
    CustomUserLogin, CustomUserRole, CustomUserClaim>
{
    public CustomUserStore(ApplicationDbContext context)
        : base(context)
    {
    }
}
public class CustomRoleStore : RoleStore<CustomRole, int, CustomUserRole>
{
    public CustomRoleStore(ApplicationDbContext context)
        : base(context)
    {
    }
} 
public class ApplicationDbContext : IdentityDbContext<ApplicationUser, CustomRole, 
int, CustomUserLogin, CustomUserRole, CustomUserClaim>  
{
    public ApplicationDbContext()
        : base("SMSGoConnection")
    {
    }
    public static ApplicationDbContext Create()
    {
        return new ApplicationDbContext();
    }
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);
    }

Помощь будет оценена.

0 ответов

Другие вопросы по тегам