asp.net-mvc - 在 MVC 布局菜单上显示和更新购物车计数

标签 asp.net-mvc c#-4.0 layout viewbag

我有一个 MVC 应用程序,它应该在主 _Layout 页面上显示购物车计数。当用户从购物车添加或删除数据时,我需要更新此值。由于这些数据更改可以从整个应用程序的多个位置完成,因此我对于是否在每个 Controller 上调用 GetCartCount() 犹豫不决。

我正在考虑使用 ViewBag 或剔除计算的可观察值来存储此值,但我愿意接受任何其他建议。

存储和更新将在 MVC 应用程序的布局页面上使用的单个值的最佳方法是什么?

最佳答案

最简单的方法是将此计数变量放入 Session 中,并使用 @Session 将其直接输出到 _Layout.cshtml 中。如果您不想使用 session ,您可以将此计数变量放入每个请求的 ViewBag 中,您可以在 OnActionExecuting 方法中的 BaseController 中设置它(如果您没有,只需创建一个并从中继承您的 Controller )这样您就可以避免重复。

关于asp.net-mvc - 在 MVC 布局菜单上显示和更新购物车计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21733846/

相关文章:

jquery - 将 ASP.NET MVC 4 中的 jQuery 1.8.3 更新为 jQuery 1.9.0

asp.net-mvc - MVC 3 -ASP.NET重定向到其他 View

android - 添加更大的透明覆盖层以增加可点击区域,而无需更改布局

c# - 如何制作 1 :many relationship between models with different query ( linq syntax )

asp.net-mvc - 带有连字符的 ActionLink htmlAttributes

c# - 协变/逆变 : how to make the following code compile

c# - 如何获取嵌套括号之间的文本?

asp.net-mvc-3 - 如何使用 URL 重写规则过滤 URL

HTML 布局 - 使单独表格中的单元格尺寸匹配

html - 如何以类似于 Facebook 时间轴的方式布置我的内容 div?