Я пытаюсь создать ассоциацию между AspNetUsers
и Users
.
Таблица My Users определяется следующим образом:
public class User
{
public long UserId { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
public string Contact { get; set; }
public string Address { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public string Role { get; set; }
public string Token { get; set; }
public List<Client> Clients { get; set; }
public string IdentityUserId { get; set; }
public IdentityUser IdentityUser { get; set; }
}
Вот мой DbContext
класс :
public class ApplicationDbContext : IdentityDbContext<IdentityUser>
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
: base(options)
{
}
public ApplicationDbContext()
{
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
..........................
}
Когда я пытаюсь добавить новую миграцию со свойством IdentityUser
, добавленным в пользовательскую таблицу, я получаю следующую ошибку: The entity type 'IdentityUserLogin' requires a primary key to be defined
. Если вы намеревались использовать вызов типа сущности без ключа HasNoKey()
.
У меня есть отношения, определенные таким же образом в других моих проектах, но я не получаю эту ошибку, и моя таблица пользователей связана с AspNetUsers
таблица.
Я пробовал все решения, большинство из которых советуют вам добавить
base.OnModelCreating(modelBuilder);
в OnModelCreating
функцию, которую я уже сделал, но все равно получаю эту ошибку.
Я использую ASP. NET Core 3.1 с Entity Framework Core 3.1.5.
Может ли кто-нибудь указать на то, что я здесь делаю неправильно? Я также пытался унаследовать свой класс Users
от класса IndetityUsers
, но все равно получаю эту ошибку.
Любая помощь приветствуется.