此处记录学习efcore 过程中一些学习笔记:
1.code first 创建数据库,一对多关系对应为一个对象拥有一个集合,这个集合使用virtual标识以便使用lazyLoading,另一方面被拥有的对象也有所属对象及所属对象ID。多对多关系除了两个对象分别用拥有对方集合方式表示外,还得有两个对象关系对象存储关系所属对象。类型关系展示如下所示:
一个Customer有多个订单:
public partial class Customers
{
public Customers()
{
Orders = new HashSet<Orders>();
}
[Key]
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Address { get; set; }
public string Phone { get; set; }
public string Email { get; set; }
[InverseProperty("Customer")]
public virtual ICollection<Orders> Orders { get; set; }
}
一个订单order属于一个Customer,并且一个订单包含多个商品product
public partial class Orders
{
public Orders()
{
ProductOrders = new HashSet