Я пытаюсь использовать новую идентификатор ASP.NET в моем приложении MVC5, в частности, я пытаюсь интегрировать идентификатор ASP.NET в существующую базу данных. Я уже прочитал вопросы/ответы по SO, относящиеся к DB First и ASP.NET Identity, и выполнив все рекомендации, которые я по-прежнему не могу добавить роли в свою базу данных, хотя у меня нет проблем с добавлением пользователей. Здесь мой код:
var context = new PayrollDBEntities();
var roleManager = new RoleManager<AspNetRole>(new RoleStore<AspNetRole>(context));
bool roleExists = roleManager.RoleExists(roleDto.Name);
if (roleExists){
return false;
}
var role = new AspNetRole(roleDto.Name){
Name = roleDto.Name,
};
IdentityResult result = roleManager.Create(role);//Getting exception here
В последней строке кода я получаю исключение типа 'System.InvalidOperationException': The entity type IdentityRole is not part of the model for the current context.
Вот мой контекст:
public partial class PayrollDBEntities : IdentityDbContext
{
public PayrollDBEntities()
: base("name=PayrollDBEntities")
{
}
public virtual DbSet<AspNetRole> AspNetRoles { get; set; }
public virtual DbSet<AspNetUserClaim> AspNetUserClaims { get; set; }
public virtual DbSet<AspNetUserLogin> AspNetUserLogins { get; set; }
public virtual DbSet<AspNetUser> AspNetUsers { get; set; }
......
}
Мои классы AspNetUser
и AspNetRole
выводятся из IdentityUser
и IdentityRole
соответственно, но я все еще получаю это исключение. Вот моя диаграмма базы данных:
Любая помощь будет принята с благодарностью.