更新实体(实体框架6)中的集合.网络核心)
本文关键字:实体 集合 网络 核心 框架 更新 | 更新日期: 2023-09-27 18:11:38
我有两个模型:
public class Customer : People
{
public int CustomerID { get; set; }
public decimal? Weight { get; set; }
public decimal? Height { get; set; }
public ICollection<Purchase> Cart { get; set; }
}
和
public class Purchase
{
public int PurchaseID { get; set; }
public DateTime Time { get; set; }
public decimal TotalPrice { get; set; }
public int Amount { get; set; }
public Good Good { get; set; }
}
我已经有一个客户,需要更新他的购物车(例如,将史密斯添加到其中)。
我试过这样做,但这毫无效果。我做错了什么?
Customer customer = new Customer()
{
CustomerID = currentID.Value
};
var cart = new List<Purchase>();
cart.Add(new Purchase()
{
Amount = 1,
Good = good,
Time = DateTime.Now,
TotalPrice = good.Price
});
customer.Cart = cart;
var entry = _context.Entry(customer);
_context.Update(customer);
_context.SaveChanges();
更新:我试着做建议的事情,但是…我生命中有什么不明白的?当我尝试更新时的上下文与当我尝试查看更新的Customer
当您尝试更新您的实体时。这就是我所遵循的方法。
context.Entry(customer).State = System.Data.EntityState.Modified;
context.ChangeTracker.DetectChanges();
context.SaveChanges();