首先祝大家新年快乐!!!!
我有以下代码从db表tr_shoppingCart
tr_ShoppingCart cart = new tr_ShoppingCart
{
cartId = sc.CartId,
CartGenDt = sc.CreateTime,
UserId = ((SessionData)Session["object"]).sessObj.UserId,
prodId = obj.prodId,
Qnty = obj.Qnty,
Total = obj.Total
};
if (ModelState.IsValid)
{
//db.Entry(cart).State = System.Data.EntityState.Deleted;
db.tr_ShoppingCart.Attach(cart);
db.tr_ShoppingCart.Remove(cart);
db.SaveChanges();
}
但它给出了错误:
ObjectStateManager中已存在具有相同键的对象。 ObjectStateManager无法跟踪具有相同对象的多个对象 键。
这是我的数据库表tr_ShoppingCart
答案 0 :(得分:0)
更详细地解释了这个问题here。我认为cartId
是你的关键。检查sc.CartId是否已经在tr_ShoppingCart列表中。如果是,则必须确保正确生成ID。