首页 > 解决方案 > 如何将所有已下订单保存在 ASP.NET 的“MyOrder”表中

问题描述

我想将所有已下订单保存在MyOrder表格中。

我正在使用 ASP.NET 开发汽车零件的电子商务在线商店。我使用的是网络表单而不是 MVC。对于数据库,我使用的是 Microsoft SQL Server。

我有一个UserInformation包含以下列的表格:

在此处输入图像描述

MyOrder表具有以下列:

在此处输入图像描述

Cart表这些列:

在此处输入图像描述

Cart表用于保存购物车中特定用户购买的产品,并且购物车表中的“金额”是产品的数量而不是价格。

MyOrder表用于保存管理员的所有已下订单列表。

当用户点击“继续结帐”按钮时。然后用户名、ProductID、数量、购买日期、地址、价格必须保存到MyOrder表中。

在此处输入图像描述

我使用以下代码作为结帐按钮来保存详细信息,但它不起作用。没有数据保存在MyOrder表中。它总是显示 Null 值

protected void btnCheckOut_Click(object sender, EventArgs e)
{
    GarageDBEntities ord = new GarageDBEntities();

    var userId = Convert.ToInt32(User.Identity.GetUserId());
    var firstName = ord.UserInformations.Where(u => u.ID == userId).SingleOrDefault().FirstName;
    var products = (List<Product>)Session[User.Identity.GetUserId()];
    //var Address = ord.UserInformations.(u => u.ID == userId).singleordefault().Address;

    if (products != null)
    {
        foreach (var p in products)
        {
            MyOrder singleOrder = new MyOrder()
            {
                Username = firstName,
                ProductID = p.Id,
                //Quantity = p.Cart.Amount,
                DatePurchased = DateTime.Now
                //Address = Address,
                //Price = (double)p.Price
            };
            ord.MyOrders.Add(singleOrder);
            ord.SaveChanges();
        }
    }
}

我注释了几件事,只是为了检查它是否正常工作、项目运行和订单是否正确放置,并且购物车表中的条目得到更新,但它没有保存在MyOrder表中。

没有注释部分会出现以下错误。

在此处输入图像描述

如何将用户下的所有订单保存在MyOrder表格中以及如何删除屏幕截图中显示的所有错误?

标签: asp.netdatabasewebformse-commerceweb-site-project

解决方案


推荐阅读