ASP.Net Core - Как добавить новое поле в стандартную структуру Microsoft Identity - PullRequest
0 голосов
/ 26 ноября 2018

Используя ASP.Net Core 2.1, я пытаюсь добавить новое поле в стандартную структуру таблицы Microsoft Identity Users, поэтому я создал новую модель, которую я использовал в контексте базы данных проекта для наследования от Microsoft.AspNetCore.Identity,Раньше я успешно реализовывал следующий код, но на этот раз получил ошибку.

Вот модель:

public class ApplicationUser : IdentityUser
{
    public string Age { get; set; }
}

Вот контекст базы данных:

public class ApplicationDbContext : IdentityDbContext<ApplicationUser, string>
{
    public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options) { }
    public string CurrentUserId { get; set; }
}

А вот ошибка вывода:

Неуниверсальный тип IdentityDbContext нельзя использовать с аргументами типа

Что я здесь не так делаю?

1 Ответ

0 голосов
/ 26 ноября 2018

Я не уверен, но я не вижу базового конструктора, который принимает эти 2 аргумента типа.

См. MSDN

Допустимые аргументы типа:

//none
public class IdentityDbContext

или

//application user
public class IdentityDbContext<TUser> 

или

//Thanks to @ Ivvan
public class IdentityDbContext<TUser,TRole,TKey>

или

//the full version
public class IdentityDbContext<TUser, TRole, TKey, TUserLogin, TUserRole, TUserClaim>

Так что в вашем случае, я думаю, вы имели в виду:

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
...