李春雷
(洛陽文化旅游職業(yè)學(xué)院,河南 洛陽 471026)
在C#、C++等編程語言支持下開發(fā)的ASP.NET、ADO.NET 框架,可以被用于多種Web 網(wǎng)頁、應(yīng)用程序系統(tǒng)的開發(fā)設(shè)計(jì),且該框架平臺(tái)可很好地適用于不同數(shù)據(jù)庫或數(shù)據(jù)文件。本文選用ASP.NET 框架、SQL Server 2000 數(shù)據(jù)庫,以網(wǎng)絡(luò)商品的瀏覽、購買等購物消費(fèi)情境為主,建立電子商務(wù)系統(tǒng)的多層服務(wù)體系結(jié)構(gòu),為不同用戶和客戶提供商品展示、其他信息展示、商品搜索、商品信息統(tǒng)計(jì)和購物結(jié)算等的功能服務(wù)[1]。
ASP.NET 作為基于微軟.NET Framework 的Web開發(fā)平臺(tái),其與傳統(tǒng)的ASP 服務(wù)器端腳本開發(fā)環(huán)境存在著較大區(qū)別,如ASP.NET 是面向?qū)ο?Object-oriented)的應(yīng)用程序開發(fā)模式,且在ASP 網(wǎng)頁執(zhí)行的過程中,ASP.NET(后綴名.aspx)會(huì)啟動(dòng)xspwp.exe 程序,進(jìn)行網(wǎng)頁編譯與功能執(zhí)行。因此對(duì)于電子商務(wù)等WEB 網(wǎng)頁系統(tǒng)的開發(fā)設(shè)計(jì),通常會(huì)使用ASP.NET 框架、SQL Server 2000 數(shù)據(jù)庫、頁面框架及控制組件工具,從而編譯出數(shù)據(jù)庫表、XML 數(shù)據(jù)庫文件,用于web 窗體頁面訪問的登錄驗(yàn)證、用戶角色驗(yàn)證,同時(shí)控制不同類別商品數(shù)據(jù)信息的傳輸、存儲(chǔ)。
在ASP.NET 開發(fā)平臺(tái)中的Web 窗體頁,通常包含HTML 標(biāo)簽、靜態(tài)文本、服務(wù)器控件等組成部分,以及用于該頁編程的邏輯控制語句,不同文本信息都存儲(chǔ)在單獨(dú)的類似于.aspx 文件之中,包括存放所有要顯示的文字、圖片或視頻等要素內(nèi)容,而網(wǎng)頁編程代碼則存儲(chǔ)于單獨(dú)的類文件中,擴(kuò)展名為.aspx.cs或.aspx.vb。
用戶控件作為對(duì)Web 頁功能進(jìn)行分區(qū)和重用的服務(wù)器控件,是依托ASP.NET 開發(fā)平臺(tái)對(duì)aspx.文件稍作修改,用.ascx、.asp 等擴(kuò)展名保存文本文件。同時(shí)在Web 用戶控件內(nèi)部,也包含有存放網(wǎng)頁編程代碼的隱藏類文件,其擴(kuò)展名也使用.aspx.cs 或.aspx.vb,但用戶控件不能作為獨(dú)立的Web 窗體頁運(yùn)行,只能存儲(chǔ)于.aspx 文件中才能運(yùn)行。
在Web 窗體頁中通過以下多個(gè)步驟,設(shè)置系統(tǒng)網(wǎng)頁端的用戶服務(wù)器控件:一是.aspx 文件中先運(yùn)行@Register 指令注冊(cè)用戶控件,如將服務(wù)器控件注冊(cè)并存儲(chǔ)在相對(duì)路徑“/UserControl/”中,該頭文件命名為headinner.ascx,控件注冊(cè)的編程指令為:<%@Register TagPrefix="uc1" TagName="user" Src="../UserControl/user.ascx"%>。
二是標(biāo)記用戶服務(wù)器控件的開始、結(jié)束端,開始與結(jié)束之間的標(biāo)記語言為 <formrunat=server></form>,聲明用戶控件元素的導(dǎo)入語法為<Acme.Head runat="server"/>,由此該用戶控件就被存儲(chǔ)于.aspx 文件之中,成為Web 窗體頁的組成部分之一。
之后針對(duì)用戶控件在外部訪問、數(shù)據(jù)傳輸與處理等事件中的控制作用,可以先通過C# 編程將Web 窗體頁進(jìn)行初始化,再執(zhí)行封裝于用戶控件中的用戶登錄驗(yàn)證,角色驗(yàn)證等公共屬性的控制操作。
在ASP.NET 的Web 開發(fā)框架、SQL Server 2000數(shù)據(jù)庫,以及以aspx.文件為主的用戶控件支持下,可以設(shè)置電子商務(wù)系統(tǒng)的頂端導(dǎo)航欄、功能欄、登錄界面和底端版權(quán)信息欄等組成部分,而在首頁中間部分設(shè)置多個(gè)商品展示、廣告展示的銷售頁面,使用單獨(dú)的Hashtable 類文件進(jìn)行商品文本信息、圖片信息等的存儲(chǔ),用戶購物車提交后商品信息將寫入數(shù)據(jù)庫。
在SQL Server 2000 云數(shù)據(jù)庫、網(wǎng)絡(luò)后臺(tái)數(shù)據(jù)庫等軟硬件支持下,建立以商品展示、購物車添加、總價(jià)結(jié)算、會(huì)員管理等業(yè)務(wù)功能為主的數(shù)據(jù)庫表,包括用戶角色信息表(Customerlnfo)、商品信息表(ProductShow)、購物車表(Cart)等數(shù)據(jù)表文件,不同數(shù)據(jù)表結(jié)構(gòu)中存在數(shù)據(jù)名稱、數(shù)據(jù)類型、數(shù)據(jù)大小、備注信息等詳細(xì)內(nèi)容,具體電子商務(wù)系統(tǒng)數(shù)據(jù)庫表信息配置如表1 所示。
表1 電子商務(wù)系統(tǒng)數(shù)據(jù)庫表配置
在網(wǎng)絡(luò)安全交易、用戶權(quán)限等控制規(guī)范的要求下,電子商務(wù)信息化系統(tǒng)會(huì)根據(jù)用戶等級(jí)、登錄狀態(tài),設(shè)置游客、會(huì)員和管理員等的注冊(cè)管理方式,以及商品展示、商品搜索、購物車添加、總價(jià)結(jié)算、會(huì)員管理的功能模塊,不同模塊分別負(fù)責(zé)某一類的數(shù)據(jù)處理、任務(wù)執(zhí)行。
1)商品展示模塊。借助于ASP.NET 開發(fā)平臺(tái)的DataList 標(biāo)簽控件,在DataList 控件的</ItemTemplate>模式自定義模板內(nèi)容,包括商品文字介紹、圖片等的編輯與自定義。之后使用Label 標(biāo)簽控件(組件) 綁定數(shù)據(jù)源對(duì)應(yīng)的字段、Image 控件綁定數(shù)據(jù)源對(duì)應(yīng)的圖片,并在web 頁面上顯示商品文本或圖片信息[6]。
使用DataList 控件實(shí)現(xiàn)圖書展示功能。Datalist支持在ItemTemplate 模式下,編輯自定義模板,用Label 控件綁定數(shù)據(jù)源對(duì)應(yīng)的字段,Image 控件則綁定數(shù)據(jù)源對(duì)應(yīng)的圖片字段,圖片字段ImagAds 存儲(chǔ)的是圖片路徑,其代碼表達(dá)式為Eval("ImageAds")。
2)商品搜索模塊。利用ASP.NET 開發(fā)平臺(tái)的Repeater 服務(wù)器控件,制作電子商務(wù)系統(tǒng)的商品信息詳情模板,包括名稱、尺寸、顏色、數(shù)量和功能等數(shù)據(jù)信息。之后由用戶在搜索框輸入商品名稱,進(jìn)行Repeater 數(shù)據(jù)源數(shù)據(jù)的查詢檢索,Reapter 控件負(fù)責(zé)對(duì)搜到商品數(shù)據(jù)的輸出顯示[7]。
3)購物車添加、總價(jià)結(jié)算與支付模塊。外部游客、會(huì)員在瀏覽與選定商品后,可將購買物品添加至購物車,這些信息可被存放于單獨(dú)的DataSet 數(shù)據(jù)集中,而后消費(fèi)者提交購物車將多種數(shù)據(jù)集信息,上傳至后臺(tái)數(shù)據(jù)庫中。
在電子商務(wù)系統(tǒng)的商品結(jié)算與支付頁面,先由for 循環(huán)語句對(duì)GridView 數(shù)據(jù)庫列表,進(jìn)行逐行掃描、數(shù)據(jù)統(tǒng)計(jì),再通過sql 語句執(zhí)行結(jié)算指令,為用戶商品支付操作提供支持,具體的語句執(zhí)行代碼為:
select BookShow.ISBN as 編號(hào),BookName as 名稱,Price as 單結(jié)價(jià),amount as 數(shù)量,Price*amount as合計(jì)form Cart,BookShow:where Cart.b_id=BookShow.ISBN’”+Session[“user”]ToString()+”’and c_flag=l”。
4)會(huì)員管理模塊。會(huì)員管理包括普通用戶、會(huì)員用戶等主體的訪問控制、信息管理。在電子商務(wù)系統(tǒng)的用戶注冊(cè)、登錄、密碼找回的環(huán)節(jié),可以根據(jù)數(shù)據(jù)庫表中設(shè)置的會(huì)員名稱、密碼、手機(jī)聯(lián)系號(hào)碼、郵箱等信息,通過ASP.NET 平臺(tái)的安全驗(yàn)證控件,驗(yàn)證用戶登錄權(quán)限、數(shù)據(jù)訪問的合法性。
如以.ascx 文件為主的用戶控件,可以被用于用戶登錄、訪問權(quán)限的檢查。根據(jù).ascx.cs 文件中封裝的roleValue 角色值、selectgoods 編號(hào),設(shè)置哪些用戶角色擁有Web 窗體頁訪問、商品信息查詢與消費(fèi)的權(quán)限。這樣當(dāng)外部用戶訪問Web 窗體頁時(shí),只需執(zhí)行導(dǎo)入.ascx 文件的控制指令,就可以實(shí)現(xiàn)復(fù)雜下的會(huì)員管理。
在網(wǎng)絡(luò)電子商務(wù)系統(tǒng)系統(tǒng)的開發(fā)建設(shè)過程中,通常借助于ASP.NET 框架、SQL Server 2000 數(shù)據(jù)庫及控制組件工具等,進(jìn)行會(huì)員管理、商品展示、商品搜索、購物車操作、結(jié)算與支付的功能管理模塊設(shè)置,以及使用.aspx 文件中的用戶控件,控制用戶訪問權(quán)限、驗(yàn)證用戶登錄及數(shù)據(jù)操作的合法性,提高整個(gè)系統(tǒng)的安全性、操作便捷性。