Ядро Entity Framework не может распознать ключевой атрибут - PullRequest
0 голосов
/ 01 декабря 2019

Я использую .Net Core 3. Совершенно новый проект с Identity.

Я сделал простой новый объект для добавления в базу данных. Я получаю следующую ошибку при запуске. Как вы можете видеть, я уже добавил атрибут [Key] к сущности, и он все равно не будет регистрироваться.

enter image description here

public class DataContext : IdentityDbContext
{
    public DataContext(DbContextOptions<DataContext> options)
        : base(options)
    {
    }

    protected override void OnModelCreating(ModelBuilder builder)
    {
        base.OnModelCreating(builder);
    }

    public DbSet<LocationRecord> LocationRecords { get; set; }
    public DbSet<LocationActivity> LocationActivities { get; set; }
}

ИКласс модели:

public class LocationActivity
{
    [Key]
    public Guid Id;
    public DateTime Moment { get; set; }

    public double Latitude { get; set; }
    public double Longitude { get; set; }

    public int Confidence { get; set; }
    public string ActivityType { get; set; }

    public string UserId { get; set; }
    [ForeignKey(nameof(UserId))]
    public IdentityUser User { get; set; }
}

1 Ответ

1 голос
/ 01 декабря 2019

Ваш идентификатор - это поле, а не свойство. Попробуйте переписать так:

public class LocationActivity {
     [Key] 
     public Guid Id {get; set;}
     .......
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...