C# 购物车用户添加新的记录宽度ADO实体框架
我使用ado实体框架并将新产品添加到购物车中,但无法设置登录用户。当我保存实体以便我的应用程序在用户表中创建新记录时。但我已经登录,并且我从会话中获取了我的用户对象C# 购物车用户添加新的记录宽度ADO实体框架,c#,asp.net,entity-framework,cart,C#,Asp.net,Entity Framework,Cart,我使用ado实体框架并将新产品添加到购物车中,但无法设置登录用户。当我保存实体以便我的应用程序在用户表中创建新记录时。但我已经登录,并且我从会话中获取了我的用户对象 Product prod = db.Product.Where(t => t.ProductId == ProductId).FirstOrDefault(); Cart mycart = new Cart(); mycart.Product = prod; //I can get user object from ses
Product prod = db.Product.Where(t => t.ProductId == ProductId).FirstOrDefault();
Cart mycart = new Cart();
mycart.Product = prod;
//I can get user object from session. I'm logged in.
mycart.User = (User)Session["LoggedUser"]; //this line create a new row to User table. but i'm already logged in
mycart.Price = prod.Price;
mycart.SessionID = Session.SessionID;
db.Cart.Add(mycart);
db.SaveChanges();
/*** my cart class *//
public class Cart{
[Key]
public int CartId{get;set;}
public virtual Product Product{get;set;}
public virtual User User {get;set;}
public int Quantity{get;set;}
public string SessionID { get; set; }
}
有什么问题吗?为什么不插入一行代码var usr=(用户)Session[“LoggedUser”];在myCart.User=。。。第行,在下一行上放置一个断点,并查看该行执行后usr变量的确切内容?它是hold logged用户的实体。