AddToCart未显示在购物篮中

时间:2018-02-24 09:28:54

标签: asp.net-mvc

我正在使用MVC创建一个食品店,用户可以在其中添加菜单项。但是我遇到了“添加到购物车”的问题。特征。

这是我从数据库中获取项目的课程

public class Item
{
    private RestaurantA pr = new RestaurantA();
    private int quantity;

    public Item()
    { }

    public Item(RestaurantA product, int quantity)
    {
        this.pr = product;
        this.Quantity = quantity;
    }

    public int Quantity { get => quantity; set => quantity = value; }
    public RestaurantA Pr { get => pr; set => pr = value; }
}

这是“添加到购物车”的方法。在订单控制器

public ActionResult OrderNow()
    {
        if (Session["cart"] == null)
        {
            List<Item> cart = new List<Item>();
            cart.Add(new Item(db.RestaurantA.Find(id), 1));
            Session["cart"] = cart;
        }
        else
        {
            List<Item> cart = (List<Item>)Session["cart"];
            cart.Add(new Item(db.RestaurantA.Find(id), 1));
            Session["cart"] = cart;                
        }
        return View("Cart");
    }      

另外,我在&#39;(id)&#39;下面得到了一条小小的蠕动线。错误&#34;名称&#39; id&#39;在当前上下文中不存在&#34;。我不知道为什么会出现这个错误,因为&#39; id&#39;在模型中,问题在其他类中不存在。

public class RestaurantA
{
    public int ID { get; set; }
    [Display(Name = "Name")]
    public string Name { get; set; }
    [Display(Name = "Item Type")]
    public string ItemType { get; set; }
    [Display(Name = "Price")]
    [DataType(DataType.Currency)]
    public decimal Price { get; set; }
}    

购物车视图有一个列出名称和价格的表格。

<table class=" table table-bordered table-hover">
<tr>
    <th>ID</th>
    <th>Name</th>
    <th>Price</th>
    <th>Quantity</th>
    <th>Total</th>
</tr>
@foreach (Item item in (List<Item>)Session["cart"])
{
    <tr>
        <td>@item.Pr.ID</td>
        <td>@item.Pr.Name</td>
        <td>@item.Pr.Price</td>
        <td>@item.Quantity</td>
        <td>@(item.Pr.Price * item.Quantity)</td>
    </tr>
}

</table>

每个菜单项都有一个链接,可以添加到旁边的购物车

@foreach (var item in Model) { <td class=" btn btn-default">
                   @Html.ActionLink("Add to Cart", "OrderNow", "Order", new { id = item.ID}, null)     
                </td>  }    

我遇到的问题是,当我点击“添加到购物车”时,它不会执行此操作并且购物车保持为空。我不知道为什么会这样,如果有人能帮助我,我会很感激。非常感谢你。

0 个答案:

没有答案