[摘要] ASP.NET的許多技術(shù)特征,使它更適合于開發(fā)大規(guī)模的、分布式Web應(yīng)用程序。本文通過網(wǎng)上購物系統(tǒng)的開發(fā)論述了ASP.NET環(huán)境下電子商務(wù)網(wǎng)站的設(shè)計及實現(xiàn)。
[關(guān)鍵詞] ASP.NET Web應(yīng)用程序 電子商務(wù) 數(shù)據(jù)庫
一、前言
在互連網(wǎng)絡(luò)高速發(fā)展的今天,商務(wù)網(wǎng)站已成為目前Internet上廣泛使用的在線系統(tǒng)之一。為此我們設(shè)計了一個模擬購物超市的網(wǎng)上購物系統(tǒng),論述了ASP.NET技術(shù)在各方面的應(yīng)用。
二、ASP.NET技術(shù)簡介
ASP.NET除了具有ASP的優(yōu)點外,更具有功能強(qiáng)大,ASP.NET徹底拋棄了腳本語言,而代之于編譯式語言(如VB、C#等),為開發(fā)者提供了更加強(qiáng)有力的編程資源;允許用服務(wù)器端控件取代傳統(tǒng)的HTML元素并充分支持事件驅(qū)動機(jī)制,并為開發(fā)者提供了強(qiáng)力的集成開發(fā)工具Visual Studio.NET。
三、ASP.NET在網(wǎng)上購物系統(tǒng)中的應(yīng)用
1.ASP.NET與ADO.NET結(jié)合訪問數(shù)據(jù)庫的實現(xiàn)
在電子商務(wù)中,對用戶而言,進(jìn)行網(wǎng)上信息查詢的目的是尋找自己需要的產(chǎn)品或服務(wù)。因此,讓用戶通過瀏覽器查詢服務(wù)的后端數(shù)據(jù)是Web服務(wù)提供者必須提供的服務(wù)。本文對數(shù)據(jù)庫的訪問是通過.NET框架中包含的SQL Server專門提供程序來實現(xiàn)的。
ASP.NET與ADO.NET結(jié)合訪問數(shù)據(jù)庫的步驟如下:
(1)創(chuàng)建一個數(shù)據(jù)庫連接;
(2)請求一個記錄集合;
(3)把記錄集合暫存到DataSet;
(4)如果需要,返回第(2)步(DataSet 可以容納多個數(shù)據(jù)集合);
(5)關(guān)閉數(shù)據(jù)鏈路;
(6)在DataSet上作所需要的操作;
'創(chuàng)建對象SqlConnection
Dim Conn As New SqlConnection(\"server=localhost; DataBase=數(shù)據(jù)庫名; UID=連接數(shù)據(jù)庫時的用戶名;PWD=連接數(shù)據(jù)庫時的密碼\")
Dim adp As New SqlDataAdapter(\"select * from 要操作的數(shù)據(jù)表名\",conn) '建立適配器對象,請求一個記錄集合
Dim ds As New DataSet'建立DataSet對象
adp.Fill(ds, \"DataSet中相應(yīng)記錄集合的表名\") '填充DataSet,把記錄集合暫存到DataSet
……'具體數(shù)據(jù)庫操作代碼省略
Conn.Close()'關(guān)閉數(shù)據(jù)鏈路
Conn=Nothing'清除對象
2.注冊功能的實現(xiàn)
注冊使用戶的個人信息輸入數(shù)據(jù)庫,并使用戶在購物過程中通過個人的用戶名和密碼。注冊成功后,將設(shè)置一個Session變量來標(biāo)識此用戶已經(jīng)通過了注冊,是合法的可購物的用戶,如Session(“Flag”)=true。
3.用戶登錄的實現(xiàn)
曾經(jīng)注冊過的老用戶可以直接登錄網(wǎng)站進(jìn)行購物。登錄時只需輸入用戶名與密碼,提交給服務(wù)器,服務(wù)器查詢客戶信息庫,如無此用戶,將重定向到重新登錄界面。若身份合法,將標(biāo)識登錄成功,設(shè)置Session變量,Session(username)=用戶username,通過設(shè)置Session變量,用戶在各頁面跳轉(zhuǎn)時,程序可通過Session來得到用戶信息。在缺省情況下,如果沒有用戶請求,服務(wù)器只保留Session20分鐘。同時也可設(shè)置Session的屬性Timeout來改變這一時間長度,通過Session.Abandon也可強(qiáng)制銷毀Session,來注銷用戶。
4.商品的顯示
商品的顯示包括商品的圖片、商品的類別、商品的名稱、商品的詳細(xì)說明、商品的產(chǎn)地。而這些商品的信息都存放在后臺數(shù)據(jù)中“Product”數(shù)據(jù)表中。為了在數(shù)據(jù)庫中存儲圖片,可以把產(chǎn)品的圖片存儲在服務(wù)器上的一個固定目錄下,同時,表內(nèi)字段的值填充為圖片的存儲路徑,這樣便完成了圖片的存儲與管理工作。由于要在頁面上顯示圖片,為了增強(qiáng)效果,所用的圖片格式都選擇為GIF型。商品顯示的具體實現(xiàn)是通過Repeater控件讀取后臺數(shù)據(jù)中“Product”數(shù)據(jù)表來實現(xiàn)的??梢越柚砀裥问?,在相應(yīng)單元格內(nèi),通過標(biāo)記,便可在相應(yīng)位置顯示圖片。同時,顯示商品名稱時,也可增加超鏈接到商品具體信息頁面,方法為:<%# DataBinder.Eval(Container.DataItem,\"proname\")%>
四、結(jié)束語
本文從軟件設(shè)計的角度探討了ASP.NET在電子商務(wù)網(wǎng)站建設(shè)實踐中的應(yīng)用,具有很好的實用價值。此方法也可推廣到其他大中小規(guī)模的連鎖銷售企業(yè)構(gòu)建電子商務(wù)系統(tǒng)。當(dāng)然本系統(tǒng)還有其不足,如還應(yīng)考慮Internet的安全問題、物流配送條件和用戶消費信用等級、CA認(rèn)證等諸方面。
參考文獻(xiàn):
[1]唐微胡智勇錢君:ASP.NET在網(wǎng)站開發(fā)中的技術(shù)研究[J].遼寧科技學(xué)院學(xué)報,2005,(02)
[2]譚明佳:基于ASP.NET的Web程序優(yōu)化分析[J].計算機(jī)與現(xiàn)代化, 2005,(03)
[3]黃穎謝忠:ASP.NET、SQLServer技術(shù)在動態(tài)網(wǎng)站開發(fā)中的應(yīng)用[J].電腦知識與技術(shù),2004,(35)
[4]應(yīng)毅毛宇光劉正濤:基于ADO.NET技術(shù)的Web訪問數(shù)據(jù)庫研究與實現(xiàn)[J].計算機(jī)與現(xiàn)代化,2005,(04)