【问题标题】:Cart Summary In Layout布局中的购物车摘要
【发布时间】:2014-10-24 19:58:11
【问题描述】:

我开发了一个电子商务应用程序。我使用 C#、MVC 和实体框架和引导程序。 我已经在我的数据库中保存了购物车项目。我的问题是: 我想在布局的顶部显示购物车的摘要。但是你对这个操作有什么建议。 我应该对购物车的摘要使用部分视图还是其他方式?

另一方面,我如何在每次请求时从数据库中读取我的购物车数据。我当然不能从控制器中输入它。因为我想在每一页的屏幕顶部显示购物车的摘要。我应该从应用程序开始阅读它还是?任何人都建议我进行此操作。

//_Layout.cshtml
<body>
    <div class="container">
        <nav class="navbar navbar-default" role="navigation">
            <div class="navbar-header">
                <a class="navbar-brand" href="#">E-Commerce</a>
            </div>
            <form class="navbar-form navbar-left" role="search">

                <div class="input-group">
                    <input type="text" class="form-control" placeholder="Arama">
                    <span class="input-group-addon">
                        <i class="fa fa-search"></i>
                    </span>
                </div>
            </form>
            <p class="navbar-text pull-right">

                /* I want to see shopping cart summary in this section*/ 

                <i class="fa fa-shopping-cart"></i>
                <span id="cartTotal">

                </span>
                (<span id="cartItemCount"></span>)
            </p>
            <p class="navbar-text pull-right">Log In</p>
            <p class="navbar-text pull-right">Register</p>

        </nav>

    </div>
    <div class="container">
        @RenderBody()
    </div>
</body>
</html>

【问题讨论】:

  • 我认为你应该使用Html.Action 来调用Action taht 返回PartialView。
  • 设计方面: 1. 在任何视图中显示任何内容 - 编写一些 jQuery 来呈现显示并仅传输原始数据 - 这将确保速度。 2. 存储购物车最好在会话中完成,除非您特别希望将其作为用户登录并获得相同持久购物车的功能。然后在登录时阅读。

标签: c# asp.net-mvc shopping-cart helper


【解决方案1】:

你可以使用这个解决方案

在控制器中

 [ChildActionOnly]
    public ActionResult CartSummary()
    {   
        ViewData["CartCount"] = 3; // count Qty in your cart
        return PartialView("CartSummary");
    }

右键单击并添加视图,然后在 PartialView 中选择 PartialView

@ViewData["CartCount"]

在布局中,您要显示购物车数量的位置

@{Html.RenderAction("CartSummary", "controllerName");}

【讨论】:

    猜你喜欢
    • 2011-03-15
    • 2011-03-26
    • 1970-01-01
    • 2021-01-14
    • 1970-01-01
    • 2018-12-17
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多