Подтвердить что ты не робот

AddEntityFrameworkStores можно вызывать только с ролью, которая происходит от IdentityRole в .NET Core 2.0

Я изменил проект из версии .NET Core 1.1 на 2.0, но я получаю сообщение об ошибке из Identity, когда он пытается добавить магазины:

services.AddIdentity<ApplicationUser, IdentityRole<long>>()
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();

Выброшенная ошибка:

AddEntityFrameworkStores можно вызывать только с ролью, которая выводится из IdentityRole

Это мои классы:

public class ApplicationUser : IdentityUser<long>
{
}

public class ApplicationDbContext : IdentityDbContext<ApplicationUser, IdentityRole<long>, long>        
{
        public ApplicationDbContext(DbContextOptions options) : base(options) { 
        }
}

Кто-нибудь может мне помочь?

4b9b3361

Ответ 1

Давным-давно я задавал этот вопрос, но вот как я сейчас справляюсь:

Startup.cs

services.AddIdentity<User, Role>()
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();
services.AddScoped<RoleManager<Role>>();

Entites:

public class User : IdentityUser<int>
{
}

public class Role : IdentityRole<int>
{
}