MvcMusicStore代码在异步删除购物车里的记录时,发现网站顶部的购物车数据并没有变,如图说明
由于教程里并没有提供解决方案,所以自己解决。
1、_Layout.cshtml中Cart所在的<li>标记id
<li id="nav-cart">@{Html.RenderAction("CartSummary", "ShoppingCart");}</li>
2、ShoppingCart/Index.cshtml中的异步删除成功代码段中加
$('#nav-cart').load('/ShoppingCart/CartSummary');
运行后删除后顶部购物车数量没变,在浏览器地址栏输入[demourl] /ShoppingCart/CartSummary后,显示异常:
重新查看了一遍代码,发现CartSummary上有[ChildActionOnly]属性,去掉它并重新运行,问题解决。
ChildActionOnly的作用在于:让这个Action不通过直接在地址栏输入地址来访问,只能在View中通过Html.Action或Html.RenderAction来使用。