Я пытаюсь настроить некоторые классы ядра 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. ApplicationUser
1[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>. Это ограничение также выполняется.
В чем проблема?
Или укажите на эту проблему .. – Legends
Что именно вы пытаетесь сделать в отношении Identity, можете ли вы объяснить это немного подробнее. Я думаю, это может помочь другим вам указать другой подход. – MethodMan
Я просто хочу реализовать API-интерфейс ASP.NET как можно более настраиваемый, чтобы он был доступен в качестве шаблона для будущих проектов. Позже я могу взглянуть на него без особых усилий по поиску. – Legends