1
我正在使用会话来实现购物车。添加到购物车似乎工作得很好,但是当我从购物车中取出物品时,我遇到了问题。当我使用浏览器返回按钮返回到预设页面时,返回到购物车页面,我再次看到以前删除的项目。我看到有解决方案禁用缓存到所有MVC项目当然我不想要的。其他解决方案是将购物车保存到数据库,但这不是一个好的解决方案,因为我允许匿名用户购买购物车。 这是在购物车查看部分代码:在MVC 4中缓存页面
@model Project.Model.ShoppingCart
foreach (var item in Model._linecollection)
{
var totalForProduct=((item.Product.Price/100.0)*item.Quantity);
total+=totalForProduct;
<tr>
<td>@item.Product.Name</td>
<td><input class=input-mini type="number" value="@item.Quantity" /></td>
<td>@(item.Product.Price/100.0) </td>
<td>@totalForProduct</td>
<td>
@using(Html.BeginForm("RemoveFromCart","Cart",FormMethod.Post,new {@id="form"}))
{
<input type="hidden" name="productId" value="@item.Product.Id" class="pToDelete">
<button type="submit" class="deleteFromCart">Delete</button>
}
</td>
</tr>
非常简单有效的解决方案! – 2013-04-25 23:41:21