-1

Я пытаюсь настроить некоторые классы ядра ASP.NET, которые используют Generics.Нет никакого неявного преобразования ссылок из ApplicationUser в IdentityUser

Мой ApplicationUser класс:

public class ApplicationUser : IdentityUser<Guid>//, ApplicationUserClaim, ApplicationRole, ApplicationUserLogin> 
{ 
    public ApplicationUser() { } 
} 

Мой ApplicationUserStore класс:

public class ApplicationUserStore : UserStore<ApplicationUser, ApplicationRole, ApplicationDbContext, Guid> 
{ 
    public ApplicationUserStore(ApplicationDbContext ctx, IdentityErrorDescriber describer = null) : base(ctx, describer) 
    { 

    } 
} 

сообщение об ошибке:

«AspDotNetC oreFullFramework.Identity. ApplicationUser1[System.Guid]', on Microsoft.AspNetCore.Identity.EntityFrameworkCore.UserStore`8 [TUser, TRole, TContext, TKey, TUserClaim, TUserRole, TUserLogin, TUserToken]» нарушает ограничение параметра типа 'TUser'

Теперь, когда я иду к реализации .NET из UserStore (базовый класс):

общественного класса UserStore < TUser, TRole, TContext, TKey >: UserStore < TUser, TRole, TC КОНТЕКСТ, TKey, IdentityUserClaim <TKey>, IdentityUserRole <TKey>, IdentityUserLogin <TKey>, IdentityUserToken <TKey> >
где TUser: IdentityUser <TKey>
... где TKey: IEquatable <TKey> {

Я вижу, что ApplicationUser наследует от IdentityUser <GUID>. Это ограничение выполнено. TKey - это GUID, который реализует IEquatable <GUID>. Это ограничение также выполняется.

В чем проблема?

+0

Или укажите на эту проблему .. – Legends

+0

Что именно вы пытаетесь сделать в отношении Identity, можете ли вы объяснить это немного подробнее. Я думаю, это может помочь другим вам указать другой подход. – MethodMan

+0

Я просто хочу реализовать API-интерфейс ASP.NET как можно более настраиваемый, чтобы он был доступен в качестве шаблона для будущих проектов. Позже я могу взглянуть на него без особых усилий по поиску. – Legends

ответ

1

Добавление GUID в

IdentityBuilder.AddEntityFrameworkStores<ApplicationDbContext,Guid>(); 

как уже упоминалось в этом post решить эту проблему.

Смежные вопросы