实体框架核心无法识别关键属性

时间:2019-12-01 19:59:26

标签: c# entity-framework asp.net-core

我正在使用.Net Core3。带有身份的全新项目。

我已经做了一个简单的新实体,可以添加到数据库中。启动时出现以下错误。如您所见,我已经向实体添加了[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 个答案:

答案 0 :(得分:1)

您的ID是一个字段,而不是一个属性。尝试像这样重写:

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