实体框架核心版本是7.0.10.从数据库获取数据时,即使我已经在MODEL类中设置了主键,它也没有抛出任何主键异常.
实体类型‘Order’需要定义主键.
以下是代码.
[Table("xxxTable")]
public class Order
{
[Key]
[Column("ID")]
public int Id;
public string Name { get; set; }
}
//Here is the method to get data from database
public async Task<Order> GetOrdersByDay(int days)
{
Order r = await this._dbContext.Orders.FirstOrDefaultAsync();
return r;
}
我在类Order
中用属性[Key]
设置了主键,但它不起作用.例外情况仍然存在.
如果我使用流畅的API设置主键,它工作得很好.
modelBuilder.Entity<Order>(entity =>
{
entity.HasKey(t => t.Id);
});
为什么[Key]
不起作用?当我只想使用属性而不是流畅的API时,如何才能解析它?