999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Hashtable簡易購物車的實現(xiàn)

2016-08-11 00:40:49

馮 菁

(淮北職業(yè)技術(shù)學(xué)院 計算機科學(xué)技術(shù)系,安徽 淮北 235000)

?

基于Hashtable簡易購物車的實現(xiàn)

馮菁

(淮北職業(yè)技術(shù)學(xué)院 計算機科學(xué)技術(shù)系,安徽 淮北235000)

摘要:.NET FrameWork 提供了眾多類庫,其中Hashtable集合維護很多對Key-Value鍵值對,對于集合中任一元素的查找、定位,都是基于找到對應(yīng)的Key和Value值,應(yīng)用在處理動態(tài)添加、刪除數(shù)據(jù)時很方便。以電子商務(wù)購物車為例,使用ASP.NET技術(shù)、語言VB.NET和Hashtable類的方法、屬性、遍歷等來實現(xiàn)一簡易購物車。

關(guān)鍵詞:HashTable;ASP.NET;集合

購物車是電子商務(wù)網(wǎng)站的重要功能之一,功能大致有將商品添加進購物車,顯示購物車,刪除修改所選商品,修改數(shù)量,計算總價等.這些功能操作可以采用數(shù)據(jù)讀取、修改的案例。本例選擇.NET提供的解決方案,ASP.NET提供了WEB編程新技術(shù),并支持多種語言,配套有功能強大的集成開發(fā)環(huán)境Visual Studio.Net,本文案例用的是VB.NET語言。開發(fā)一個成功的購物車系統(tǒng),對于今后開發(fā)同類項目非常有益。

一、HashTable集合類型

ASP.NET是當(dāng)前流行的WEB程序開發(fā)技術(shù)之一,是建立在通用語言上的程序構(gòu)架,適用于多種開發(fā)語言,能被用于建立強大的WEB應(yīng)用程序.編程語言可支持Visual C#,VC++,Visual Basic.Net,Jscript.Net。

集合是把一群可變長的對象類型的元素組合在一起,它們的數(shù)據(jù)緊密相關(guān),能夠安全有效地處理這些緊密相關(guān)的數(shù)據(jù)。這些類在System.Collections命名空間。[1]

.NET work提供一種Hashtable集合類型。Hashtable也是System.Collections命名空間提供的一個容器。每個元素通過一個鍵(Key)和一個值(Value)來組織的。其中key區(qū)分大小寫,可用來快速查找;Value用于存儲對應(yīng)于Key的值。Hashtable中Key/Value鍵值對均為object類型,所以Hashtable可以支持任何類型的Key/Value鍵值對。[2]

定義哈希表Dim Hash as Hashtable

Hashtable的主要屬性有:

1.Hash.Count:獲取Hashtable中的鍵/值對的數(shù)目。

2.Hash.Item:獲取或設(shè)置與指定的鍵相關(guān)聯(lián)的值。

3.Hash.Keys:獲取Hashtable中的鍵。

4.Hash.Values:獲取Hashtable中的值。

Hashtable的主要方法有:

1.Add(Object key,Object value):將指定鍵/值添加到Hashtable中。

2.Clear():從Hashtable中移除所有元素。

3.Contains(Object key):確定Hashtable是否包含特定鍵。

4.Remove(Object key):從Hashtable中移除帶有指定鍵的元素。[1]

Hashtable集合類似于數(shù)組,又不像數(shù)組可以用索引訪問,即不可以用下標(biāo)訪問某一元素。Hashtable通過關(guān)鍵字來訪問元素,來刪除元素.它的遍歷使用foreach語句。

使用hashtable類必須引入該命名空間,C#語言:using system.collections;

VB.NET語言:Imports System.Collections

二、購物車功能演示

在開發(fā)Web應(yīng)用程序中, B2C電子商務(wù)網(wǎng)上購物車這一功能很普及,因此購物車程序的編寫就顯得非常重要。購物車的技術(shù)核心功能有添加商品、修改商品、刪除商品、檢查購物車、確認(rèn)定單等。本文只演示查看購物車商品,計算總價代碼。這是一個最簡易的購物車,完成的功能也簡單,大家可在此基礎(chǔ)上根據(jù)需要繼續(xù)擴充其它功能。

例如某企業(yè)網(wǎng)站中的在線定購模塊,一個B/S結(jié)構(gòu)的B-C電子商城系統(tǒng)購物車子系統(tǒng)的用例圖如圖1所示。

圖1 購物車子系統(tǒng)的用例圖

每個子用例對應(yīng)著添加商品,刪除商品,確認(rèn)下單等。

三、購物車HashTable代碼編寫

購物車的版本,一是目前流行的個性化服務(wù)界面(如淘寶購物),支持匿名用戶;二是使用數(shù)據(jù)庫,但是程序編寫量大,難支持匿名用戶;三是登錄結(jié)合ASP內(nèi)置對象sessin使用。我們只考慮最簡單實現(xiàn)購物功能。

在購物的時候會多次對各類商品進行挑選,增刪改的方式頻繁。每次購物都要進行數(shù)據(jù)庫操作,會增加服務(wù)器的負(fù)擔(dān),如果將選擇的物品信息存在客戶端,在最后下單的時候統(tǒng)一存儲數(shù)據(jù),建議使用HashTable來實現(xiàn)物品的增刪操作,利用Session或者Cookie保存已選的物品,這樣會減少與服務(wù)器的通信,節(jié)省數(shù)據(jù)庫的讀寫操作,提高了效率。

以下是部分代碼,其中數(shù)據(jù)庫連接對象Conn、數(shù)據(jù)庫中表的命名,字段命名等命名都是沿用多數(shù)人的習(xí)慣命名的。如shop指數(shù)據(jù)庫名稱,shopprice指商品單價, shopnum指商品數(shù)量等。

1.使用hashtable類引入命名空間。

Imports System.Collections

2.連接數(shù)據(jù)庫shop,使用數(shù)據(jù)庫中的表。

Dim Provider=”Provider=Microsoft.jet.OLEDB.4.0”

Dim Database=”Data Source=” & Server.MapPath(“shop.mdb”)

3.查看購物車商品,初始化購物車。

If Hash.Count=0 Then Msg.Text=”現(xiàn)在購物車是空的!”

……

Dim ArrKey(Hash.Count-1) As String

DimArrVal(Hash.Count-1) As Integer

Dim Products As String

Hash.Keys.CopyTo(ArrKey,0)

Hash.Values.CopyTo(ArrVal,0)

Products=”(‘” &Join(ArrKey,”’,’”)&”’)”

……

Conn=New OleDbConnection(Provider & “;”&Database)

……

4.讀出哈希表數(shù)據(jù),賦值DataSet實例,并添加新數(shù)據(jù)列。

Dim X As String

For Each X in Hash.Keys

Table1.Rows.Find(X).Item(“shopnum”)=Hash.Item(X)

Next

Table1.Columns.Add(“allprice”,GetType(Long),”shopprice*shopnum”))

……

遍歷一個哈希表Hashtable,只能用for each語句進行遍歷。統(tǒng)計商品數(shù)目并計算總價。Hashtable中的元素是一個鍵值對的集合,不能夠使用索引訪問。

四、總結(jié)

ASP.NET是Microsoft公司推出用于編寫動態(tài)網(wǎng)頁的強大新技術(shù),支持以可視化的方式建立企業(yè)級網(wǎng)站,可生成安全穩(wěn)定的應(yīng)用程序。.NET框架中提供了功能多而強大的類庫進行編程,如本文簡述的Hashtable類,并可使用VB.NET、C#、Jscript.NET等編程語言來開發(fā)。本文中代碼完全可以用C#或其它編程語言進行改寫。

電子商務(wù)網(wǎng)站普及到老百姓的日常生活、網(wǎng)上商店、書店、訂餐、售票,等等,這些都需要WEB站點開發(fā),并設(shè)有網(wǎng)上購物這一功能模塊,所以購物車程序的編寫就顯得非常重要。可在此購物車基礎(chǔ)上開發(fā)更安全,質(zhì)量更高,更有效,功能更完善的購物系統(tǒng)。

參考文獻:

[1]楊樹林,胡潔萍.ASP.NET程序設(shè)計案例教程[M].北京:人民郵電出版社,2012:62-64.

[2]朱印宏.Asp.NET2.0基礎(chǔ)與實例教程:基于VB.C#[M].北京:中國電力出版社,2007:421-422.

[3]王少鋒.面向?qū)ο蠹夹g(shù)UML教程[M].北京:清華大學(xué)出版社,2008.

[4]王有禮.ASP.NET2.0完全開發(fā)指南[M].北京:北京科海電子出版社,2008.

責(zé)任編輯:凈草

收稿日期:2016-05-26

基金項目:本文系安徽省自然科學(xué)基金項目“基于數(shù)據(jù)挖掘技術(shù)的商砼企業(yè)ERP的開發(fā)與成本控制應(yīng)用研究”(編號:KJ2013Z289) 階段性研究成果。

作者簡介:馮菁(1974-),女,上海人,高級工程師,碩士,研究方向為數(shù)據(jù)挖掘。

中圖分類號:TP311

文獻標(biāo)識碼:A

文章編號:1671-8275(2016)04-0129-02

主站蜘蛛池模板: 71pao成人国产永久免费视频| 成人欧美在线观看| 白浆免费视频国产精品视频| 亚洲国产中文在线二区三区免| 精品成人一区二区| 18禁色诱爆乳网站| 国产高清色视频免费看的网址| 激情影院内射美女| 欧美综合激情| 精品国产电影久久九九| 99资源在线| 在线精品视频成人网| 亚洲黄色高清| 久久公开视频| 国产久草视频| 国产激情无码一区二区免费 | 成·人免费午夜无码视频在线观看| 国禁国产you女视频网站| 国产91麻豆视频| 欧美翘臀一区二区三区| 99这里只有精品6| 看国产一级毛片| 东京热一区二区三区无码视频| 婷婷综合色| 人人91人人澡人人妻人人爽| 欧美国产在线看| 美女免费黄网站| 亚洲欧洲日韩综合色天使| 91久久夜色精品| 国产黄色爱视频| 日本91视频| 天堂av综合网| 亚洲最大综合网| 欧美综合在线观看| 成人一区专区在线观看| 2021国产在线视频| 美女免费精品高清毛片在线视| 色婷婷电影网| 在线观看亚洲国产| 91成人在线观看| 超碰aⅴ人人做人人爽欧美| 国产亚洲精品无码专| 欧美亚洲国产日韩电影在线| 成人久久精品一区二区三区| 久久香蕉国产线| 亚洲无码久久久久| 狠狠色丁香婷婷综合| 国产JIZzJIzz视频全部免费| 亚洲人成网18禁| 热这里只有精品国产热门精品| 亚洲精品天堂在线观看| 狠狠色香婷婷久久亚洲精品| 欧美日韩综合网| 欧美亚洲欧美| 手机永久AV在线播放| 四虎亚洲国产成人久久精品| 国产三级毛片| 国产无码高清视频不卡| 免费人成网站在线高清| 国产高清无码第一十页在线观看| 国产区在线观看视频| 激情五月婷婷综合网| 露脸真实国语乱在线观看| 国产麻豆另类AV| 天天操精品| 男女男精品视频| 永久免费AⅤ无码网站在线观看| 亚洲人成成无码网WWW| 99久久精品久久久久久婷婷| 九九这里只有精品视频| 亚洲成人高清无码| 99久久免费精品特色大片| 五月激激激综合网色播免费| 国产主播一区二区三区| 成人va亚洲va欧美天堂| 宅男噜噜噜66国产在线观看| 97国产在线视频| 无码精品国产VA在线观看DVD| 欧美a级在线| 午夜老司机永久免费看片| 97久久免费视频| 91蜜芽尤物福利在线观看|