国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net基于HashTable實現購物車的方法

2024-07-10 13:29:50
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了asp.net基于HashTable實現購物車的方法,涉及asp.net中HashTable結合session實現購物車功能的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
 

本文實例講述了asp.net基于HashTable實現購物車的方法。分享給大家供大家參考,具體如下:

//用戶購買商品時if (e.CommandName.ToLower() == "buy") { //判斷用戶購物車是否為空 如果為空則分配一個 Hashtable table; if (Session["car"] == null) {  table = new Hashtable(); } else {  //用戶購物車己存在 則取出數據  table = Session["car"] as Hashtable; } //如果用戶購物車中不包括該商品信息 則添加一個新商品 if (!table.Contains(e.CommandArgument)) {  table.Add(e.CommandArgument, 1);//添加一個新商品 數量為1 } else  {  //如果購物車己存在該商品信息 則將該商品的數量加1 根據HashTable的鍵獲取相對應的值  int count = Convert.ToInt32(table[e.CommandArgument].ToString());  //給該商品數量加上1  table[e.CommandArgument] = (count + 1); } //保存商品信息 Session["car"] = table; Response.Redirect("shoppingcar.aspx");}//商品信息列表private void shoplist(){  Hashtable table;  if (Session["car"] == null)  {   table = new Hashtable();  }  else  {   table = Session["car"] as Hashtable;  }  if (table.Count == 0)  {   Image13.Visible = true;   Msg.Visible = true;   Msg.Text = "<b style="color:red" mce_style="color:red">您還沒有購物呢?趕快購物吧!</b>";  }  string[] Arrkey = new string[table.Count];  int[] ArrVal = new int[table.Count];  table.Keys.CopyTo(Arrkey, 0);  table.Values.CopyTo(ArrVal, 0);  //定義字符串 形成 ('1,2,3')  string Products = "('";  int k = 0;  for (int j = 0; j < Arrkey.Length; j++)  {   if(k>0)Products += "','"; k++;   Products += Arrkey.GetValue(j).ToString();  }  Products += "')";  DataSet ds = productbll.GetInfoByWhere(" pid in " + Products);  DataTable Table1 = new DataTable();  Table1 = ds.Tables[0];  Table1.Columns.Add(new DataColumn("shuliang", System.Type.GetType("System.Int32")));  //得到pid的值 并將它設置為Table1的主鍵  DataColumn[] keys = { Table1.Columns["pid"]};  Table1.PrimaryKey = keys;  foreach (string key in table.Keys)  {   Table1.Rows.Find(key)["shuliang"] = table[key];//根據鍵獲取值 商品的數量  }  Table1.Columns.Add(new DataColumn("zongjia", System.Type.GetType("System.Double"), "hotprice*shuliang"));  for (int n = 0; n < Table1.Rows.Count; n++)   {   tPrice +=Convert.ToDouble(Table1.Rows[n]["zongjia"]);  }  Label1.Text = tPrice.ToString();  Session["total"] = Label1.Text.ToString();  MyGrid.DataSource = Table1.DefaultView;  MyGrid.DataBind();}#region 從購物車中刪除一條商品信息protected void MyGrid_RowCommand(object sender, GridViewCommandEventArgs e){  Hashtable table;  if (Session["car"] == null)  {   table = new Hashtable();  }  else  {   table = Session["car"] as Hashtable;  }  //如果點擊刪除按鈕 則從購物車中移除該商品信息  if (e.CommandName.ToLower() == "delete")  {   if (table.ContainsKey(e.CommandArgument))   {    //從HashTable中移除該商品的信息(商品編號) 鍵:為商品編號 值為:商品數量    table.Remove(e.CommandArgument);   }   Msg.Text = (string)e.CommandArgument;  }  Session["car"] = table;  //調用方法  shoplist();}#endregion

希望本文所述對大家asp.net程序設計有所幫助。



注:相關教程知識閱讀請移步到ASP.NET教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 行唐县| 岱山县| 泽库县| 珠海市| 潍坊市| 汉源县| 隆安县| 凤城市| 黔江区| 黄陵县| 武川县| 龙口市| 新密市| 临安市| 扬中市| 讷河市| 台南市| 邓州市| 沾化县| 买车| 新郑市| 米林县| 鸡泽县| 武夷山市| 报价| 穆棱市| 菏泽市| 巴塘县| 苗栗市| 密云县| 安新县| 武定县| 谷城县| 且末县| 永登县| 北京市| 东阳市| 阳谷县| 荆州市| 新郑市| 黑山县|