Тип сущности 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);
}
Помощь будет оценена.