我有一个UWP-Project,它收集一些数据,我想将它们保存到数据库中。 我使用EntityFrameworkcore sqlite创建了一个.net库。
im创建DBContext:
public class DBContext : DbContext
{
public DbSet<MyModel> Model { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlite("Data Source=MyModel.db");
}
}
并且MyModel类包含以下代码:
public class MyModel
{
[Key]
public int Id;}
现在我从我的UWP-Project中仅调用DatabaseContext来存储我的数据:
public static class DatabaseService
{
public static void SaveToDb(DataList model)
{
using (var db = new DBContext())
{
foreach(var auction in model.auctions)
{
MyModel data = new MyModel() { Id = model.Id};
db.Model.Add(data);
}
db.SaveChanges();
}
}
}
但是他仍然抱怨MyModel确实有一个PrimaryKey的定义。
我是否错过了一些识别PrimaryKey的键注释的东西?
答案 0 :(得分:0)
键必须是属性,而不是字段。
public class MyModel
{
[Key]
public int Id {get;set;}
}