AspNetCore.Identity не работает с пользовательской реализацией User / Role

Потому что я склоняюсь кGuid как мой основной тип ключа, мойUser а такжеRole классы реализованы следующим образом

public class User : IdentityUser<Guid, UserClaim, UserRole, UserLogin>
{
}

public class Role : IdentityRole<Guid, UserRole, RoleClaim>
{
}

Обратите внимание, чтоUserClaim, UserRole, UserLogin & RoleClaim все реализованы одинаково

Вот мойDbContext реализация

public class ApplicationDbContext : IdentityDbContext<User, Role, Guid, UserClaim, UserRole, UserLogin, RoleClaim, UserToken>
{
}

Пока все хорошо, за исключением того, что новый DI-контейнер AspNetCore не похож на мою пользовательскую реализацию по умолчанию. Следующая строка кода из моего файла Startup.cs выдает ошибку, показанную ниже

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

GenericArguments [0], «NewCo.DomainModel.Models.Identity.User», в «Microsoft.AspNetCore.Identity.EntityFrameworkCore.UserStore`4 [TUser, TRole, TContext, TKey]» нарушает ограничение типа «TUser».

Я предполагаю, что это потому, что по умолчанию Identity Gremlin реализован для использованияIdentityUser<string>где я используюIdentityUser<Guid>.

Что мне делать дальше?(Я все из идеи)

Примечание: я работаю с официальными выпусками Microsoft .NET Core и ASP.NET Core по состоянию на понедельник (27 июня 2016 г.) и Visual Studio Update 3 (если это кому-нибудь поможет)

Ответы на вопрос(4)

Ваш ответ на вопрос