首先,我从 session 中选取数据。我试图将这些数据转移到另一个模型。但是我的第一个数据( session )已成功上传到数据库中。第一次数据传输成功。但第二个第三个第四无论如何,这些数据无法传输我的模型。
这是我的代码:
public async Task<IActionResult> Checkout(Order11 anOrder) {
List<Shop> shop = HttpContext.Session.Get<List<Shop>>("shop");
for (int i = 0; i < shop.Count(); i++) {
if (shop != null) {
anOrder.ProductName = shop[i].Name;
anOrder.ImagePath = shop[i].Image;
anOrder.Price = shop[i].Price;
anOrder.Quantity = shop[i].Quantity;
anOrder.OrderNo = GetOrderNo();
_db.Order11.Add(anOrder);
}
_db.SaveChanges();
}
// other code
}
Order11.cs
public class Order11
{
public int Id { get; set; }
[Display(Name = "Order Number")]
public string OrderNo { get; set; }
[Required]
public string Name { get; set; }
[Required]
[Display(Name = "Phone Number")]
public string PhoneNo { get; set; }
[Required]
[EmailAddress]
public string Email { get; set; }
[Required]
public string Address { get; set; }
public DateTime OrderDate { get; set; }
public string ImagePath { get; set; }
public int Quantity { get; set; }
public int Price { get; set; }
public string ProductName { get; set; }
}
}
当我运行应用程序时,我收到此错误:
我想将所有 session 数据传输到我的模型(数据库)中。这个问题的解决办法是什么?我是初学者请帮忙。
最佳答案
保存数据前请设置anOrder.Id = 0;
。
关于c# - 向数据库插入数据失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65548742/