使用Session对象实现购物车案列

购物车案例




提示:以下是本篇文章正文内容,下面案例可供参考

1、购物车商品显示前端代码

// An highlighted block
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>购物车案例</title>
    //在Content文件夹里面引入shopping.css文件
    <link href="Content/shopping.css" rel="stylesheet" />
</head>
<body>
    <form id="form1" runat="server">
            <div class="page">
                <div class="adv">
                //我这里就用了同一张图片做演示
                    <img src="image/1.jpg" width="250px" />
                    <div class="title">华硕(ASUS)飞行堡垒五代FX80 15.6 英寸游戏笔记本</div>
                    <div class="price">5999.00</div>
                    <div class="divBtn">
                    //给购物车商品信息列表传参
                       <a href="CarList.aspx?id=1">购买</a>
                    </div>
                </div>
                <div class="adv">
                    <img src="image/1.jpg" width="250px" />
                    <div class="title">美商海盗船(USCorsair)额定650W RM650x 电源</div>
                    <div class="price">869.00</div>
                    <div class="divBtn">
                    //同上
                       <a href="CarList.aspx?id=3">购买</a>
                    </div>
                </div>
                <div class="adv">
                    <img src="image/1.jpg" width="250px" />
                    <div class="title">联想(Lenove)M400e(PLUS)商用办公台式</div>
                    <div class="price">3299.00</div>
                    <div class="divBtn">
                       <a href="CarList.aspx?id=4">购买</a>
                    </div>
                </div>
                <div class="adv">
                    <img src="image/1.jpg" width="250px" />
                    <div class="title">惠普(HP)14-ce0016TU 1寸轻薄笔记本电脑</div>
                    <div class="price">4799.00</div>
                    <div class="divBtn">
                      <a href="CarList.aspx?id=1">购买</a>
                    </div>
                </div>
            </div>    
    </form>
</body>
</html>

2、 css代码

代码如下(示例):

.page{
	background-color: aqua;
	margin: 0 auto;
}
.adv {
	float: left;
	margin: 0 20px;
}
.price,.title,.divBtn{
	text-align: center;
}

3、购物车商品信息列表前端

代码如下:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
        //显示购物结果
            <asp:Label ID="IbiRes" runat="server" Text="" ForeColor="Red"></asp:Label>
          //显示购物信息列表
            <asp:Label ID="IbiCarlist" runat="server" Text=""></asp:Label>
           
        </div>
    </form>
</body>
</html>

4、商品显示列表后端代码

代码如下:

 protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Request.QueryString["id"] != null)
                {
                    IbiRes.Text = "购物成功!";
                    //获取购物的商品列表
                    string id = Request.QueryString["id"];
                    //判断是否购买过
                    if (Session["car"] != null)
                    {
                    //如果购物车存在,则先取出购物车里面的所有物品
                        Dictionary<string, int> dic = (Dictionary<string, int>)Session["car"];
                        //判断是否购买过
                        if (dic.ContainsKey(id))
                        {
                        //如果购买过,则把原来的商品数量加1
                            int sum = (int)dic[id];
                            dic[id] = sum + 1;
                        }
                        else
                        {
                         //如果没有购买过,则添加1个商品,商品数量为1
                            dic.Add(id, 1);
                        }
                    }
                    else
                    {
                    //如果购物车不存在,则创建一个购物车保存到Session中
                        Dictionary<string, int> dic = new Dictionary<string, int>();
                        dic.Add(id, 1);
                        Session["car"] = dic;
                    }
                    showcar();
                }
            } 
        }
        //商品显示方法
        public void showcar()
        {
            Dictionary<string, int> dic = (Dictionary<string, int>)Session["car"];
            string html = "<table><tr><td>商品编号</td><td>商品数量</td></tr>";
                foreach (KeyValuePair<string,int> kv in dic)
                {
                    html += "<tr><td>" + kv.Key + "</td><td>" + kv.Value + "</td></tr>";
                }
            html += "</table>";
            IbiCarlist.Text = html;
        }
    }
  • 21
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南余.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值