本科畢業(yè)論文--網(wǎng)上訂餐管理系統(tǒng)_第1頁
已閱讀1頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  摘要</b></p><p>  時代在進步,科技在發(fā)展,當今時代網(wǎng)絡已經(jīng)成了我們生活中一個不可或缺的部分。網(wǎng)絡的發(fā)展也給我們帶來了無限的商機與便利,有人可以足不出戶就賺錢,有人可以足不出戶就買到想買的東西、訂票等等。在餐飲業(yè),網(wǎng)絡也同樣能夠發(fā)揮它巨大的作用—網(wǎng)上訂餐管理系統(tǒng)。</p><p>  網(wǎng)上訂餐管理系統(tǒng)旨在通過網(wǎng)站的形式實現(xiàn)想

2、要訂餐的用戶的訂餐過程。本課題基于Web2.0,使用ASP.NET2.0實現(xiàn)B/S模式的訂餐系統(tǒng)。用戶通過訪問餐館的網(wǎng)站就能夠看到該餐館的菜肴種類、價格等信息,從而做出訂餐的決定,然后使用唯一的賬號登陸,通過一定的支付方式來付款,僅需幾分鐘就完成了一次訂餐。而餐館也能夠及時地看到用戶在自己餐館網(wǎng)站上下的訂單,從容準備,及時送達用戶指定的就餐地點。相比一般的電話訂餐方式,網(wǎng)上訂餐不僅給用戶節(jié)省了大量電話詢問時間和電話費,也為餐館提供了收款

3、保障,餐館可以選擇網(wǎng)上銀行或是充值系統(tǒng)等的預先付款方式,也可以選擇貨到付款的方式。在信息的準確性方面,網(wǎng)上訂餐也比電話訂餐高出一等,網(wǎng)上訂餐則是由用戶自己填寫,不太容易造成錯誤。</p><p>  關鍵詞:網(wǎng)上訂餐,B/S</p><p><b>  ABSTRACT</b></p><p>  When the era is going a

4、head, the technology developing quickly, the Internet has become a prerequisite part of our life. The development of the internet has brought us infinite opportunity of business and advantages of life. People can earn, b

5、uy things they need, order tickets and so on without going out. In the eatery area the internet can also play an important role which can be called” The System of Dinner-Order through the Internet”.</p><p> 

6、 “The system of dinner-order through the Internet“aims at realizing the process of dinner order in the form of website. This paper bases on Web2.0; uses ASP.NET 2.0 to realize the system of dinner-order through the inter

7、net of B/S module. The user who wants to order dinners can see the information of dish such as kinds, price, and introduction through suffering the website which contains the system, and then decides to order or not. Aft

8、er entering the system with his unique account, paying for th</p><p>  Key Words: Dinner-Order through the internet, B/S</p><p><b>  目 錄</b></p><p><b>  1. 引言1

9、</b></p><p><b>  1.1項目背景1</b></p><p>  1.2國內(nèi)外現(xiàn)狀1</p><p><b>  1.3項目意義2</b></p><p>  2. 相關技術介紹3</p><p>  2.1 Web 2.0技術3<

10、;/p><p>  2.2 ASP.NET技術5</p><p>  2.3 AJAX技術6</p><p>  2.4 SQL Server 2005技術8</p><p>  3. 系統(tǒng)功能分析與概要設計10</p><p>  3.1 功能分析10</p><p>  3.2 界面設

11、計16</p><p>  3.3 數(shù)據(jù)庫設計17</p><p>  4. 系統(tǒng)詳細設計與編碼實現(xiàn)21</p><p>  4.1 管理員模塊21</p><p>  4.2 會員模塊26</p><p>  4.3 公共模塊30</p><p>  5. 系統(tǒng)測試31</

12、p><p>  5.1 測試計劃制定31</p><p>  5.2 測試用例設計與執(zhí)行31</p><p>  5.3 測試報告33</p><p><b>  6. 總結36</b></p><p><b>  致謝37</b></p><p&g

13、t;<b>  參考文獻38</b></p><p><b>  1. 引言</b></p><p><b>  1.1項目背景</b></p><p>  時代在進步,科技在發(fā)展,當今時代網(wǎng)絡已經(jīng)成了我們生活中一個不可或缺的部分。網(wǎng)絡的發(fā)展也給我們帶來了無限的商機與便利,有人可以足不出戶就賺錢,有

14、人可以足不出戶就買到想買的東西、訂票等等。在餐飲業(yè),網(wǎng)絡也同樣能夠發(fā)揮它巨大的作用—網(wǎng)上訂餐管理系統(tǒng)。</p><p>  “民以食為天”,餐飲業(yè)系百業(yè)之首。中國加入WTO后,我國餐飲業(yè)己形成了高中低檔多層次,東西南北菜系多樣化,中西餐相互補充的格局。與此同時,一些先進的餐飲管理技術也進入中國。目前,網(wǎng)絡熱潮正沖擊著我們生活的方方面面。具體到餐飲業(yè)網(wǎng)絡營銷,網(wǎng)上訂餐是一種主要的形式。網(wǎng)上訂餐分為兩種類型,一種是通

15、過英特網(wǎng)預訂某飯店的席位及菜品,另外一種是通過英特網(wǎng)預訂某飯店的菜品,并由該餐廳負責送貨上門。本課題就是要實現(xiàn)后者,通過實現(xiàn)網(wǎng)上訂餐,以期能從互聯(lián)網(wǎng)技術方面為餐飲業(yè)提供強大的動力,促進餐飲業(yè)的蓬勃發(fā)展。</p><p><b>  1.2國內(nèi)外現(xiàn)狀</b></p><p>  在我國,網(wǎng)上訂餐最早出現(xiàn)在20世紀90年代末期,98年廣州等大城市己出現(xiàn)網(wǎng)上訂餐業(yè)務。200

16、0年7月,北京麗華快餐公司為了探索餐飲業(yè)網(wǎng)絡經(jīng)營的道路,尋求新的經(jīng)濟增長點,也推出了網(wǎng)上訂餐,成為探索網(wǎng)上訂餐的先驅。</p><p>  2003年非典之后,為盡快恢復遭受非典疫情嚴重影響的餐飲業(yè)和住宿業(yè)的發(fā)展,全面振興我國餐飲業(yè)和住宿業(yè)。2003年7月30日,商務部制訂了《全國餐飲業(yè)和住宿業(yè)振興計劃》,開展網(wǎng)上訂餐服務等拓展服務領域措施作為振興計劃的主要內(nèi)容被提了出來。隨后,一些餐飲公司紛紛在自己的網(wǎng)站上開設

17、了網(wǎng)上訂餐業(yè)務。</p><p>  目前網(wǎng)上訂餐已逐漸普及,特別是在快餐業(yè)發(fā)達的東部地區(qū)。但目前網(wǎng)上訂餐在我國并未成氣候,很多大的餐飲公司網(wǎng)上訂餐業(yè)務經(jīng)營慘淡,很多網(wǎng)站每天只有幾十份,經(jīng)營較好的也只有幾百份。如果單純依靠網(wǎng)上訂餐,公司根本無法生存。相反,一些小的個體飲食店老板巧妙地利用QQ、MSN等即時通信軟件作為網(wǎng)上訂餐工具,卻取得了相當不錯的效益。他們隨著網(wǎng)上訂餐業(yè)務的擴大,建立了自己的訂餐網(wǎng)站,但最初單純

18、的網(wǎng)上訂餐卻發(fā)展成了網(wǎng)上送花、網(wǎng)上送票等的網(wǎng)上送貨網(wǎng)站或者綜合類的飲食網(wǎng)站,已經(jīng)偏離了網(wǎng)上訂餐的初衷[4]。</p><p>  在美國,食品網(wǎng)(www.food.com)是目前美國網(wǎng)上訂餐行業(yè)中的先驅。設在三藩市的食品網(wǎng)在99年已服務于全美一萬三千間餐館,有七十萬的網(wǎng)上消費者。任何消費者只要輕松上網(wǎng),輸入郵區(qū)號碼,就可以了解到在周圍有哪些餐館提供網(wǎng)上送餐服務,并可以瀏覽到這些餐館的菜單,做出預訂。僅在二分鐘內(nèi),

19、預訂者就可以通過電子郵件得到確定。再過一會,就可以收到所訂的美食了。食品網(wǎng)發(fā)言人說:在參加該公司網(wǎng)上聯(lián)網(wǎng)銷售的餐館中,網(wǎng)上訂餐的數(shù)量實際上比普通的電話訂餐高出22%。此外,網(wǎng)上訂餐中多功能性的服務還可以讓消費者從容地上網(wǎng)瀏覽餐館的菜單,或進行價格上的比較,來選擇所需要的美食佳肴。目前,通過上網(wǎng)提供外賣和送餐服務的餐廳多于獨立餐館經(jīng)營者,外賣與送餐服務占餐飲生意額的一半以上。全美餐飲消費者越來越趨向于使用網(wǎng)上訂餐的形式來購買外賣,特別是年

20、輕一族的消費者。顯而易見,網(wǎng)上訂餐將成為餐館業(yè)擴大生意的金礦源,有眼光的餐館業(yè)主應該盡早考慮如何利用英特網(wǎng)上網(wǎng)銷售。對于網(wǎng)上預訂餐位,三藩市一家餐廳的總經(jīng)理說該餐廳每周至少可以接到20個網(wǎng)上訂餐。不過,他認為網(wǎng)上訂餐最有價值的地方是大大地方便了消費者。因為如果通過電話訂餐,</p><p>  總的說來,單獨的網(wǎng)上訂餐還不足以支撐網(wǎng)站的經(jīng)營。目前的狀況是規(guī)模大的不盈利,小的有盈利。原因是規(guī)模大的范圍廣,運營成本高

21、,規(guī)模小的由于運營成本低,客戶群相對穩(wěn)定,故有一定的利潤空間。</p><p><b>  1.3項目意義</b></p><p>  網(wǎng)上訂餐業(yè)務的興起, 折射出餐飲業(yè)善抓機遇、搶占利潤第二落點的經(jīng)營理念,同時也顯示出消費者在日常所需中, 運用網(wǎng)絡觀念的意識正逐漸增強。但比起如今火爆的網(wǎng)上購物, 網(wǎng)上訂酒店住宿等服務, 網(wǎng)上訂餐服務在一些餐飲企業(yè)中仍未引起足夠的重視

22、, 對于消費者來說, 許多人對這一新興業(yè)務尚缺乏了解。但因這種消費方式順應了當前信息社會的快捷、便利等趨勢, 網(wǎng)上訂餐仍存在著廣闊的發(fā)展空間。網(wǎng)上訂餐的發(fā)展也將給餐飲業(yè)帶來勃勃的生機。</p><p><b>  2. 相關技術介紹</b></p><p>  2.1 Web 2.0技術</p><p>  Web2.0的概念最早是去年在美國提

23、出來的,通過Blog口口相傳,網(wǎng)上很多IT人士試圖都在給 Web2.0 一個具體的定義,事實上卻很難。</p><p>  2.1.1 Web2.0 概述</p><p>  Web2.0是為了區(qū)別于過往的以門戶為代表的 Web1.0的稱呼,Web2.0只是一個符號,它表明的是正在變化中的互聯(lián)網(wǎng),這些變化相輔相成,彼此聯(lián)系在一起,它讓社會性、用戶、參與和創(chuàng)作這些元素浮出水面成為互聯(lián)網(wǎng)文化的

24、中堅力量。</p><p>  Web2.0的最大特點是個人化、去中心化,同時強調(diào)社會化,強調(diào)開放、共享, 強調(diào)參與、創(chuàng)造?;旧蟇eb2.0的絕大部分服務都存在一個個人標識明確的頁面。Web2.0的最大改變就是普通人開始改變、創(chuàng)造網(wǎng)絡,草根性質(zhì)的、或者說更準確的說法是非專業(yè)、業(yè)余性質(zhì)的參與。需要說明的是草根并不是是社會底層。 Web2.0要凸現(xiàn)每個用戶的價值,每個人在互聯(lián)網(wǎng)上都可以創(chuàng)造自己的價值。</p&

25、gt;<p>  2.1.2 Web2.0的技術與典型應用</p><p>  RSS ,這個是Web2.0標桿式的技術,它以XML為基礎,是站點用來和其他站點之間共享內(nèi)容的一種簡易方式(也叫聚合內(nèi)容),通常被用于新聞和其他按順序排列的網(wǎng)站, 例如Blog。一段項目的介紹可能包含新聞的全部介紹等。或者僅僅是額外的內(nèi)容或者簡短的介紹。這些項目的鏈接通常都能鏈接到全部的內(nèi)容。網(wǎng)絡用戶可以在客戶端借助于支

26、持RSS的新聞聚合工具軟件( 例如 Sharp Reader, News Crawler, Feed Demon),在不打開網(wǎng)站內(nèi)容頁面的情況下閱讀支持RSS輸出的網(wǎng)站內(nèi)容。網(wǎng)站提供RSS輸出,有利于讓用戶發(fā)現(xiàn)網(wǎng)站內(nèi)容的更新。</p><p>  XML ,Web2.0的基礎技術,原來作為HTML的父集出現(xiàn),現(xiàn)在以其為基礎的周邊應用越來越多,比如XSL、RSS、Ajax 等。</p><p&g

27、t;  Ajax ,很舊的技術,采用 Javascript+XML,克服了以往頁面更新請求將所有頁面內(nèi)容重新提交到了服務器, 然后再由服務器重新升成整個頁面的低效率方式,Ajax通過XML技術將只向服務器請求更新的數(shù)據(jù),然后通過Javascript 技術在客戶端運算生成整個頁面, 這種技術可以提高數(shù)據(jù)傳輸效率,增強用戶體驗。</p><p>  Trackback ,Trackback中文稱作“引用通告”,簡稱“

28、引用”。用處就是通知被你所引用的日志,你引用了它。這樣Blog之間就通過Trackback互相連接了起來,因此有人將之稱為“思想的橋梁”。</p><p>  Tag ,Tag是什么,網(wǎng)上目前也沒有一個準確的說法,但是大家都能按照自己的方式去用,其實Tag就是一個文章或者一個Blog的標簽,這個標簽命名可以來自關鍵詞,也可以來自分類,作為關鍵詞標記,你可以用幾個關鍵詞來概括你的文章或者Blog,這個關鍵詞可以是文

29、章中出現(xiàn)過的,也可以是沒有的,作為分類標記,Tag又不同于一般的目錄結構的分類方法,可以自由地不考慮目錄結構的給文章進行分類,各個Tag之間的關系是一種平行的關系但是又可以根據(jù)相關性分析,將經(jīng)常一起出現(xiàn)的Tag關聯(lián)起來,而產(chǎn)生一種相關性的分類。前面我們提到的RSS、Ajax和Trackback也可以說是Web2.0的Tag。</p><p>  Blog ,Web2.0時代最典型代表的應用就是Blog,Blog是

30、Weblog的簡寫,翻譯成中文叫網(wǎng)上日志,Blog是一種平臺,也是一種技術,更是一種思潮,Blog是管理個人內(nèi)容的一種工具。Blog是以 WEB( 網(wǎng)頁)方式顯示和發(fā)布,借助于互聯(lián)網(wǎng),人們就可以彼此分享自己的經(jīng)驗、想法、感受等,并由此形成一種新型的網(wǎng)絡虛擬社群和人際交往方式。</p><p>  Wiki ,Wiki一詞來源于夏威夷語的“weekee”,原本是“快點”的意思。在這里 Wiki指的是一種網(wǎng)上共同協(xié)作

31、的超文本系統(tǒng),可由多人共同對網(wǎng)站內(nèi)容進行維護和更新。我們可以通過網(wǎng)頁瀏覽器對Wiki文本進行瀏覽、創(chuàng)建、更改,而且創(chuàng)建、更改、發(fā)布的代價遠比HTML文本為小,您并不需要懂得HYTML代碼,只要簡單了解少量的Wiki的語法的約定,您就可以在系統(tǒng)中發(fā)布您的頁面。與其它超文本系統(tǒng)相比,Wiki有使用方便及開放的特點,所以Wiki系統(tǒng)可以幫助我們在一個社群內(nèi)共同收集、創(chuàng)作某領域的知識,發(fā)布大家都關心和感興趣的話題。</p><

32、;p>  SNS ,SNS即Social network software的英文縮寫, 即社會性網(wǎng)絡軟件, 社會性網(wǎng)絡軟件依據(jù)六度理論,以認識朋友的朋友為基礎,擴展自己的人脈。并且無限擴張自己的人脈,在需要的時候,可以隨時獲取一點,得到該人脈的幫助。SNS網(wǎng)站,就是依據(jù)六度理論建立的網(wǎng)站,幫你運營朋友圈的朋友。六度關系理論:美國著名社會心理學家米爾格倫 (Stanley Milgram)于20 世紀60年代最先提出,在人際脈絡中,

33、要結識任何一位陌生的朋友,這中間最多只要通過六個朋友就能達到目的。就是說你想認識一個人,托朋友找朋友,找認識他的人,之間不會超過六個人。</p><p>  網(wǎng)摘 , 網(wǎng)摘就是一種在網(wǎng)上保存網(wǎng)頁鏈接的服務,通俗的說就是一個放在網(wǎng)絡上的海量收藏夾。網(wǎng)摘服務作為一種個人的信息整理平臺,基于它在網(wǎng)絡上的這一獨特的優(yōu)勢,它能提供很多本地收藏夾所不能提供的功能。其核心價值已經(jīng)從保存瀏覽的網(wǎng)頁,發(fā)展成了一個新的信息共享的中心

34、,能夠真正做到“共享中收藏、收藏中分享”。如果每日使用網(wǎng)摘的用戶數(shù)量較大,用戶每日提供的鏈接收藏數(shù)量足夠,網(wǎng)摘站就成了匯集各種新聞鏈接的門戶網(wǎng)站。國外代表網(wǎng)站有Delicious,國內(nèi)有365key.com。</p><p>  Podcast,中文譯名尚未統(tǒng)一,但最多的是將其翻譯為“播客”。它是數(shù)字廣播技術的一種, 出現(xiàn)初期借助一個叫“iPodder”的軟件與一些便攜播放器相結合而實現(xiàn)。Podcasting錄制

35、的是網(wǎng)絡廣播或類似的網(wǎng)絡聲訊節(jié)目,網(wǎng)友可將網(wǎng)上的廣播節(jié)目下載到自己的 iPod、MP3播放器或其它便攜式數(shù)碼聲訊播放器中隨身收聽,不必端坐電腦前,也不必實時收聽,享受隨時隨地的自由。更有意義的是,你還可以自己制作聲音節(jié)目,并將其上傳到網(wǎng)上與廣大網(wǎng)友分享。就像博客顛覆了被動接受文字信息的方式一樣,播客顛覆了被動收聽廣播的方式,使聽眾成為主動參與者。</p><p>  IM,即時通訊(Instant Messeng

36、er,簡稱IM)軟件可以說是目前我國上網(wǎng)用戶使用率最高的軟件。聊天一直是網(wǎng)民們上網(wǎng)的主要活動之一,網(wǎng)上聊天的主要工具已經(jīng)從初期的聊天室、論壇變?yōu)橐訫SN、QQ為代表的即時通訊軟件。大部分人只要上網(wǎng)就會開著自己的MSN或QQ。作為使用頻率最高的網(wǎng)絡軟件,即時聊天已經(jīng)突破了作為技術工具的極限,被認為是現(xiàn)代交流方式的象征,并構建起一種新的社會關系。它是迄今為止對人類社會生活改變最為深刻的一種網(wǎng)絡新形態(tài),沒有極限的溝通將帶來沒有極限的生活。&l

37、t;/p><p>  2.2 ASP.NET技術</p><p>  ASP.NET是微軟提供的新一代的Web開發(fā)平臺,它為開發(fā)人員提供了生成企業(yè)級Web應用程序所需要的服務、編程模型和軟件基礎結構,同其他Web開發(fā)平臺相比,ASP.NET具有下面三大優(yōu)勢。</p><p>  2.2.1支持編譯型語言</p><p>  目前流行的幾種腳本語言

38、比如VBScript、JavaScript和ASP等都有兩個主要的缺點。第一,不支持強數(shù)據(jù)類型。在JavaScript中定義變量只有一個關鍵字var,使用var關鍵字定義的變量,如果賦值是字符串,該變量就是字符串變量;如果賦值是整數(shù),則該變量就是整型變量。在VBScript和ASP中,定義變量只通過一個關鍵字DIM,該變量也沒有具體的類型。第二,腳本語言是解釋型的。通常情況下,解釋型的腳本語言在性能上抵不上編譯型的語言。</p&g

39、t;<p>  自推出.NET開發(fā)平臺以來,微軟在Web服務器端開發(fā)語言方面,主推VB.NET和C#.NET這兩種編譯型語言。通過這兩種開發(fā)語言,程序員可以像開發(fā)普通的Windows程序一樣來開發(fā)Web程序,只不過在Windows程序中用于開發(fā)GUI界面的各種控件,在Web程序開發(fā)中也有它們相應的Web版本。</p><p>  程序員通過C#語言,利用VS.NET提供的各種Web控件,可以非常容易

40、地開發(fā)ASP.NET Web程序。開發(fā)的ASP.NET程序被編譯成MSIL語言,這種中間語言具有平臺無關性,而且,由于ASP.NET頁面在執(zhí)行前會被編譯,所以ASP.NET的性能得到了很大的提高。</p><p>  2.2.2程序代碼與頁面內(nèi)容的成功分離</p><p>  通常的動態(tài)網(wǎng)頁開發(fā),往往是在一個網(wǎng)頁上混合多種腳本語言。比如在HTML腳本語言上可以嵌入JavaScript或VB

41、Script等客戶端腳本語言,也可以同時嵌入ASP或JSP等服務器端腳本語言。這種多語言混合的Web開發(fā)模式通行已久,但是它的代碼可讀性很差,程序代碼同頁面內(nèi)容混合在一起,程序員要在多種語言的思維上頻繁切換,如果程序很復雜的話,這種開發(fā)模式非常不利于程序的開發(fā),而且日后的維護也將成為大問題。</p><p>  ASP.NET Web開發(fā)技術為程序員提供了一種非常好的開發(fā)模式,即Code Behind技術,它通過

42、Web控件將程序代碼與頁面內(nèi)容成功分離,從而使ASP.NET的程序結構異常清晰,開發(fā)和維護的效率也得到了很大的提高。另外可以利用Visual Studio.NET集成環(huán)境下開發(fā)ASP.NET應用程序,該環(huán)境不僅提供了強大的調(diào)試能力,而且還集成了“所見即所得”的HTML編輯器,為開發(fā)人員開發(fā)Web頁面提供了方便的圖形化支持。</p><p>  2.2.3引入服務器端控件</p><p> 

43、 在ASP中,可以給頁面手動添加HTML控件,對這些控件的響應有兩種辦法。一種是在客戶端的腳本語言中響應用戶對這些控件的輸入,另一種是把該頁面提交給服務器。這兩種辦法都存在問題,第一種辦法產(chǎn)生的問題是不同的瀏覽器以不同的方式執(zhí)行客戶端腳本語言,我們很難編寫在多種瀏覽器上都能良好運行的復雜的Web頁面。第二種辦法存在的問題是,如果我們把Web頁面重新提交給服務器,那么Internet的無狀態(tài)特性就會導致頁面上存儲在變量中的信息丟失,除非我

44、們編寫了復雜的代碼,把它們存儲在HTML元素或URL查詢字符串中。</p><p>  ASP.NET通過服務器控件解決了上述問題。服務器端控件會生成發(fā)送給瀏覽器的HTML代碼,顯示控件,它們還能生成隱藏的HTML元素來存儲它們當前的狀態(tài)。在提交頁面時,這些信息就會傳送回服務器,控件將自動處理這些信息,改變HTML,顯示控件[11]。</p><p>  2.3 AJAX技術</p&

45、gt;<p>  AJAX全稱為“Asynchronous JavaScript and XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁應用的網(wǎng)頁開發(fā)技術。 </p><p>  2.3.1與傳統(tǒng)的web應用比較</p><p>  傳統(tǒng)的web應用允許用戶填寫表單(form),當提交表單時就向web服務器發(fā)送一個請求。服務器接收并處理傳來的表單,然后返

46、回一個新的網(wǎng)頁。這個做法浪費了許多帶寬,因為在前后兩個頁面中的大部分HTML代碼往往是相同的。由于每次應用的交互都需要向服務器發(fā)送請求,應用的響應時間就依賴于服務器的響應時間。這導致了用戶界面的響應比本地應用慢得多。 </p><p>  與此不同,AJAX應用可以僅向服務器發(fā)送并取回必需的數(shù)據(jù),它使用SOAP或其它一些基于XML的web service接口,并在客戶端采用JavaScript處理來自服務器的響應

47、。因為在服務器和瀏覽器之間交換的數(shù)據(jù)大量減少,結果我們就能看到響應更快的應用。同時很多的處理工作可以在發(fā)出請求的客戶端機器上完成,所以Web服務器的處理時間也減少了。</p><p>  2.3.2 Ajax應用程序的優(yōu)勢</p><p>  通過異步模式,提升了用戶體驗</p><p>  優(yōu)化了瀏覽器和服務器之間的傳輸,減少不必要的數(shù)據(jù)往返,減少了帶寬占用<

48、;/p><p>  Ajax引擎在客戶端運行,承擔了一部分本來由服務器承擔的工作,從而減少了大用戶量下的服務器負載。</p><p>  2.3.3 優(yōu)點和缺點</p><p>  使用Ajax的最大優(yōu)點,就是能在不更新整個頁面的前提下維護數(shù)據(jù)。這使得Web應用程序更為迅捷地回應用戶動作,并避免了在網(wǎng)絡上發(fā)送那些沒有改變過的信息。</p><p>

49、;  Ajax不需要任何瀏覽器插件,但需要用戶允許JavaScript在瀏覽器上執(zhí)行。就像DHTML應用程序那樣,Ajax應用程序必須在眾多不同的瀏覽器和平臺上經(jīng)過嚴格的測試。隨著Ajax的成熟,一些簡化Ajax使用方法的程序庫也相繼問世。同樣,也出現(xiàn)了另一種輔助程序設計的技術,為那些不支持JavaScript的用戶提供替代功能。</p><p>  對應用Ajax最主要的缺點就是,它可能破壞瀏覽器后退按鈕的正常

50、行為。在動態(tài)更新頁面的情況下,用戶無法回到前一個頁面狀態(tài),這是因為瀏覽器僅能記下歷史記錄中的靜態(tài)頁面。一個被完整讀入的頁面與一個已經(jīng)被動態(tài)修改過的頁面之間的差別非常微妙;用戶通常都希望單擊后退按鈕,就能夠取消他們的前一次操作,但是在Ajax應用程序中,卻無法這樣做。不過開發(fā)者已想出了種種辦法來解決這個問題,當中大多數(shù)都是在用戶單擊后退按鈕訪問歷史記錄時,通過建立或使用一個隱藏的IFRAME來重現(xiàn)頁面上的變更。</p>&l

51、t;p>  2.3.4 Ajax的工作原理</p><p>  Ajax的核心是JavaScript對象XmlHttpRequest。該對象在Internet Explorer 5中首次引入,它是一種支持異步請求的技術。簡而言之,XmlHttpRequest使您可以使用JavaScript向服務器提出請求并處理響應,而不阻塞用戶。</p><p>  在創(chuàng)建Web站點時,在客戶端執(zhí)行

52、屏幕更新為用戶提供了很大的靈活性。下面是使用Ajax可以完成的功能:</p><p>  動態(tài)更新購物車的物品總數(shù),無需用戶單擊Update并等待服務器重新發(fā)送整個頁面。 </p><p>  提升站點的性能,這是通過減少從服務器下載的數(shù)據(jù)量而實現(xiàn)的。例如,在某購物車頁面,當更新籃子中的一項物品的數(shù)量時,會重新載入整個頁面,這必須下載整個頁面的數(shù)據(jù)。如果使用Ajax計算新的總量,服務器只會

53、返回新的總量值,因此所需的帶寬僅為原來的百分之一。 消除了每次用戶輸入時的頁面刷新。例如,在Ajax中,如果用戶在分頁列表上單擊Next,則服務器數(shù)據(jù)只刷新列表而不是整個頁面。 </p><p>  直接編輯表格數(shù)據(jù),而不是要求用戶導航到新的頁面來編輯數(shù)據(jù)。對于Ajax,當用戶單擊Edit時,可以將靜態(tài)表格刷新為內(nèi)容可編輯的表格。用戶單擊Done之后,就可以發(fā)出一個Ajax請求來更新服務器,并刷新表格,使其包含靜

54、態(tài)、只讀的數(shù)據(jù)[12]。</p><p>  2.4 SQL Server 2005技術</p><p>  SQL Server 是一個全面的、集成的、端到端的數(shù)據(jù)解決方案,它為企業(yè)中的用戶提供了一個安全、可靠和高效的平臺用于企業(yè)數(shù)據(jù)管理和商業(yè)智能應用。</p><p>  2.4.1 SQL Server 數(shù)據(jù)平臺</p><p>  S

55、QL Server 2005 為IT專家和信息工作者帶來了強大的、熟悉的工具,同時減少了在從移動設備到企業(yè)數(shù)據(jù)系統(tǒng)的多平臺上創(chuàng)建、部署、管理及使用企業(yè)數(shù)據(jù)和分析應用程序的復雜度。 通過全面的功能集、和現(xiàn)有系統(tǒng)的集成性、以及對日常任務的自動化管理能力,SQL Server 2005 為不同規(guī)模的企業(yè)提供了一個完整的數(shù)據(jù)解決方案。圖1顯示了SQL Server 2005數(shù)據(jù)平臺的組成架構。</p><p>  2.4

56、.2 SQL Server 支持工具</p><p>  關系型數(shù)據(jù)庫: 安全、可靠、可伸縮、高可用的關系型數(shù)據(jù)庫引擎,提升了性能且支持結構化和非結構化(XML)數(shù)據(jù)。 </p><p>  復制服務: 數(shù)據(jù)復制可用于數(shù)據(jù)分發(fā)、處理移動數(shù)據(jù)應用、系統(tǒng)高可用、企業(yè)報表解決方案的后備數(shù)據(jù)可伸縮存儲、與異構系統(tǒng)的集成等,包括已有的Oracle數(shù)據(jù)庫等。 </p><p>

57、  通知服務: 用于開發(fā)、部署可伸縮應用程序的先進的通知服務能夠向不同的連接和移動設備發(fā)布個性化、及時的信息更新。 </p><p>  集成服務: 可以支持數(shù)據(jù)倉庫和企業(yè)范圍內(nèi)數(shù)據(jù)集成的抽取、轉換和裝載能力。 </p><p>  分析服務: 聯(lián)機分析處理(OLAP)功能可用于多維存儲的大量、復雜的數(shù)據(jù)集的快速高級分析。 </p><p>  報表服務: 全面的報

58、表解決方案,可創(chuàng)建、管理和發(fā)布傳統(tǒng)的、可打印的報表和交互的、基于Web的報表。 </p><p>  管理工具: SQL Server 包含的集成管理工具可用于高級數(shù)據(jù)庫管理和調(diào)諧,它也和其他微軟工具,如MOM和SMS緊密集成在一起。標準數(shù)據(jù)訪問協(xié)議大大減少了SQL Server和現(xiàn)有系統(tǒng)間數(shù)據(jù)集成所花的時間。此外,構建于SQL Server內(nèi)的內(nèi)嵌Web service支持確保了和其他應用及平臺的互操作能力。

59、</p><p>  開發(fā)工具: SQL Server 為數(shù)據(jù)庫引擎、數(shù)據(jù)抽取、轉換和裝載(ETL)、數(shù)據(jù)挖掘、OLAP和報表提供了和Microsoft Visual Studio® 相集成的開發(fā)工具,以實現(xiàn)端到端的應用程序開發(fā)能力。SQL Server中每個主要的子系統(tǒng)都有自己的對象模型和API,能夠以任何方式將數(shù)據(jù)系統(tǒng)擴展到不同的商業(yè)環(huán)境中。 </p><p>  2.4.3

60、 SQL Server 2005的特點與優(yōu)勢</p><p>  充分利用數(shù)據(jù)資產(chǎn): 除了為業(yè)務線和分析應用程序提供一個安全可靠的數(shù)據(jù)庫之外,SQL Server 2005也使用戶能夠通過嵌入的功能,如報表、分析和數(shù)據(jù)挖掘等從他們的數(shù)據(jù)中得到更多的價值。 </p><p>  提高生產(chǎn)力: 通過全面的商業(yè)智能功能,和熟悉的微軟Office系統(tǒng)之類的工具集成,SQL Server 2005為

61、組織內(nèi)信息工作者提供了關鍵的、及時的商業(yè)信息以滿足他們特定的需求。SQL Server 2005目標是將商業(yè)智能擴展到組織內(nèi)的所有用戶,并且最終允許組織內(nèi)所有級別的用戶能夠基于他們最有價值的資產(chǎn)——數(shù).提供了工業(yè)上最低的規(guī)劃、實現(xiàn)和維護成本,使數(shù)據(jù)庫投資能快速得到回報[13]。</p><p>  3. 系統(tǒng)功能分析與概要設計</p><p><b>  3.1 功能分析<

62、/b></p><p>  本網(wǎng)上訂餐管理系統(tǒng)共涉及了三種類型的角色,包括:管理員、注冊會員(以下簡稱會員)和游客。故在功能上也根據(jù)這三種角色劃分了三種類型的功能。每種功能都需要有相應的角色權限才能使用,比如說游客不能使用會員的一些功能,而會員也不能使用管理員的一些功能,但是游客的功能是會員和管理員都可以使用的。下面將一一介紹。</p><p>  3.1.1 管理員功能</p

63、><p>  在用戶登陸時可以選擇賬戶的類型,如果選擇了管理員的話,則系統(tǒng)將從數(shù)據(jù)庫中判斷該用戶是否為管理員,如果是的話則跳轉到管理員專有的頁面上進行操作。(見圖3 - 1到3 - 4)</p><p>  圖 3 - 1 管理員選擇管理員類型登陸</p><p>  圖 3 - 2 管理員登陸后的頁面頭部分</p><p>  圖 3 - 3

64、會員選擇管理員類型登陸</p><p>  圖 3 - 4 會員選擇管理員類型登陸后的產(chǎn)生錯誤</p><p>  管理員功能主要分為以下幾個大的部分,首先,最重要的是訂單的管理,在該項功能中包含了對當前待處理的定單的處理、查看、排序、刪除(見圖3 - 5),以及對已處理的歷史訂單的查看、排序等(見圖3 - 6和3 - 7)。</p><p>  圖 3 - 5 所

65、有待處理的定單</p><p>  圖 3 - 6 所有已處理的定單</p><p>  圖 3 - 7 點擊“詳情”后顯示的訂單詳情(未處理定單中同)</p><p>  其次,菜品管理也是重要的一個部分。在菜品管理中包括了添加、刪除和修改菜品。(見圖3 - 8和3 - 9)管理員通過點擊按鈕來添加菜品,每個菜品都可以添加有自己的名稱、價格、圖片和介紹等信息(見圖

66、3 - 10)。</p><p>  圖 3 - 8 菜品管理部分功能</p><p>  圖 3 - 9 修改菜品信息</p><p>  圖 3 - 10 點擊“添加新菜”后的添加菜品</p><p>  最后的一個部分就是會員的管理。在該功能中,管理員可以查看每個會員的所有訂單,對每個訂單還能看到他訂了些什么、消費了多少等等。 (見圖3

67、 - 11)</p><p>  圖 3 - 11 會員管理操作</p><p>  管理員功能部分的結構圖如下圖所示:</p><p>  圖 3 - 12 管理員功能結構圖</p><p>  3.1.2 會員功能</p><p>  在會員功能中,最重要的就是點菜功能了。因此將點菜頁面作為了系統(tǒng)的主頁,一經(jīng)登陸就

68、可以看到主頁上的熱門菜、新品上市和選菜下訂單部分。(見圖 3 - 13)會員只需點擊每個菜品片下面的按鈕,就可以將該菜品加入購物車中,然后在頁面的底部也將動態(tài)地顯示出當前購物車中的物品、數(shù)量及價格,也可以刪除。(見圖 3 - 14)在會員認為完成了點菜之后,點擊按鈕,就會顯示出當前訂單的所有詳細的內(nèi)容,以及要求會員填寫就餐時間、地點、聯(lián)系電話等信息。(見圖3 - 15)</p><p>  其次,會員功能還包括了

69、會員服務和留言反饋。在會員服務中,會員可以修改自己的基本信息,也可以看到自己所有的訂單、訂單的詳細情況以及訂單現(xiàn)在有沒有被送出等信息。(見圖3 - 16)在留言反饋中,會員可以留下對本訂餐管理系統(tǒng)中的一些不足之處的意見和建議或者是贊美之詞。(見圖3 - 17)</p><p>  圖 3 - 13選菜下訂單主頁</p><p>  圖 3 - 14購物車</p><p&

70、gt;  圖 3 - 15 點擊“ok,去收銀臺后”的提交菜單</p><p>  圖 3 - 16會員服務頁面</p><p>  圖 3 - 17 留言反饋頁面</p><p>  會員功能部分的結構圖如下圖所示:</p><p>  圖 3 - 18 會員功能結構圖</p><p>  3.1.3 游客功能<

71、;/p><p>  游客是指沒有在本訂餐管理系統(tǒng)中注冊過的訪問者。當游客訪問時首先看到的是選餐的頁面,游客可以選擇菜品,加入購物車,當游客點擊按鈕時,就會顯示出沒有登陸的信息并要求登陸后才能使用下訂單的功能。對于會員服務,游客點擊進去之后所有的內(nèi)容都是空的,對于留言反饋,游客點擊進去之后只能查看所有的留言而不能發(fā)表留言。(見圖3 - 19)</p><p>  圖 3 - 19 游客點擊“ok

72、,去收銀臺”之后</p><p><b>  3.2 界面設計</b></p><p>  本系統(tǒng)的所有界面都采用了紅色色調(diào),美工效果比較少,整體比較簡潔有序。另外像注冊、登陸、收銀臺和添加新菜這些頁面都采用了彈出式的方式,使頁面看上去比較有動感。(登陸見圖3 – 20,其余彈出框類似)</p><p>  圖 3 - 20 在點擊了登陸后彈出

73、的登陸框</p><p>  3.2.1 管理員界面</p><p>  在登陸時,管理員選擇管理員類型登陸后,即跳轉到管理員專用的頁面,在管理員部分中將所有的功能分布在三個頁面上:訂單處理、菜品管理和會員管理。(見圖3 - 21)</p><p>  圖 3 - 21 管理員頁面部分</p><p>  3.2.2 會員界面</p&g

74、t;<p>  在登陸時,會員選擇會員類型登陸后,即跳轉到會員的頁面,在會員部分中也將所有的功能分布在三個頁面上:選餐訂餐、會員服務和留言反饋。這部分的頁面和游客和頁面是一樣的,只不過當游客訪問某些頁面的時候會因為沒有登陸而無法訪問。(見圖3 – 22)</p><p>  圖 3 - 22 會員頁面部分</p><p><b>  3.3 數(shù)據(jù)庫設計</b&

75、gt;</p><p>  數(shù)據(jù)庫往往是一個管理信息系統(tǒng)的核心,因為它存儲了該系統(tǒng)的所有數(shù)據(jù)和信息,所以極其重要。在數(shù)據(jù)庫設計中,既要關心到數(shù)據(jù)的冗余問題,又要關心到表與表之間的關系。</p><p>  3.3.1 數(shù)據(jù)庫結構</p><p>  本系統(tǒng)的數(shù)據(jù)庫名稱為“DinnerOrder”,數(shù)據(jù)庫中包含了以下幾個表:FoodAndDrink, Member,

76、MemberReback, Orders, Orders_Detail。其中FoodAndDrink表中存放了所有菜品的信息,包括:菜品ID、菜品名稱、價格、介紹、種類、圖片、被訂次數(shù);Member表中存放了所有會員的信息,包括會員ID、會員姓名、性別、郵箱、電話、密碼、地址、類型、訂餐次數(shù)、訂餐總額;MemberReback表中存放了會員的反饋信息,信息ID、留言人姓名、留言標題、留言內(nèi)容和留言時間;Orders表中存放了所有的訂單,

77、包括訂單ID、訂單會員ID、菜品數(shù)量、總額、用餐地點、訂餐時間、用餐時間、狀態(tài)、聯(lián)系電話和處理時間;Order_Detail表中存放了每個訂單的詳細菜單,包括訂單ID、菜品ID、每樣菜品的數(shù)量、菜品名稱和價錢。(圖3 – 21顯示了FoodAndDrink表的結構)</p><p><b>  圖 3 - 23</b></p><p>  在這些表中存在一些關系:Or

78、ders表中的會員ID參考了Member表中的會員ID,Order_Detail表中的訂單ID參考了Orders表中的訂單ID,每個表中都是以ID作為主碼的??紤]到菜品是隨時要修改的,而訂單的數(shù)據(jù)是要一直保存在數(shù)據(jù)庫中的,所以沒有將訂單中的菜品ID號與FoodAndDrink中的ID號參照起來,雖然這樣做產(chǎn)生了一定的數(shù)據(jù)冗余,但是這保證了在個性菜品信息以后,此前訂單中曾經(jīng)訂過該菜品的數(shù)據(jù)不會丟失,這樣,管理員也可以根據(jù)歷史數(shù)據(jù)做出合理的

79、安排,此外,將訂單的詳細數(shù)據(jù)存放在一張表中雖然有冗余,但是在一定程度上卻加快了數(shù)據(jù)庫表查詢的速度。</p><p>  3.3.2 數(shù)據(jù)庫操作</p><p>  數(shù)據(jù)庫操作主要是指對數(shù)據(jù)庫中每個表的查詢、插入、修改和刪除等操作。在本系統(tǒng)中,F(xiàn)oodAndDrink和Orders表包含了所有的操作,另外的三個表沒有刪除的操作。在插入和修改表數(shù)據(jù)的時候都必須考慮到表中字段的數(shù)據(jù)類型及完整性約

80、束,如:非空、整型與小數(shù)、圖像的二進制類型及字符串的定長與可變長度等,必須在程序中對輸入的數(shù)據(jù)進行相應的轉換后才可以保存到數(shù)據(jù)庫中,在刪除訂單時候,由于Order_Detail表中參照了Order表中的ID號,所以必須進行級聯(lián)刪除,即刪除訂單的時候也刪除Order_Detail表中相應訂單的數(shù)據(jù)。而在其他的表中沒有這樣的問題,因為沒有涉及到參照。</p><p>  3.3.3 數(shù)據(jù)字典</p>&

81、lt;p>  表 3 - 1 數(shù)據(jù)字典</p><p>  4. 系統(tǒng)詳細設計與編碼實現(xiàn)</p><p><b>  4.1 管理員模塊</b></p><p>  管理員模塊主要涉及了訂單管理、菜品管理和會員管理三個部分,這個模塊當中涉及的數(shù)據(jù)庫操作比較多。</p><p>  4.1.1 訂單管理</p&

82、gt;<p>  訂單管理主要對會員提交的處理工作,包含了顯示訂單、在訂單派送后更改訂單的狀態(tài)和對于不合理的定單的刪除。</p><p>  在顯示訂單方面分為未處理訂單和已處理訂單兩個部分,但是都是放在一個頁面上,其中未處理訂單顯示在頁面的最上方,有利于管理員登陸后馬上就能看到并處理,使用GridView來顯示數(shù)據(jù),從數(shù)據(jù)庫中把數(shù)據(jù)讀到DataReader中,再建立一張DataTable,把數(shù)據(jù)放

83、進去,最后將這張DataTable綁定到GirdView中(由于后面的數(shù)據(jù)顯示基本上都是采用這種方法,所以后面不再詳述)。將數(shù)據(jù)對訂單的顯示也有排序方式可選擇,分為:按用餐的時間排序、按訂餐時間排序、按訂單金額排序和按菜品數(shù)量排序四種。排序方式放在DropDownList中,并啟用AutoPostBack,值一經(jīng)改變就馬上更新顯示的方式并顯示。(代碼如下,一些變量的定義不在其中,后面的代碼都是這樣)</p><p&g

84、t;<b>  /*</b></p><p>  *創(chuàng)建gridview的數(shù)據(jù),通過strDe_UnDe來判斷是哪個</p><p><b>  */</b></p><p>  protected void BindOrderUndeliverd()</p><p><b>  {<

85、;/b></p><p>  this.gridviewOrderUndeliverd.DataSource = CreateSourceOrder(strSelOrderUnDeliverd, "UnDe");</p><p>  this.gridviewOrderUndeliverd.DataBind();</p><p>  lbn

86、NextPageUnde.Enabled = true;</p><p>  lbnPrevPageUnde.Enabled = true;</p><p>  if (intCurrentPageUnde == (intPageCountUnde - 1))</p><p><b>  {</b></p><p>  

87、lbnNextPageUnde.Enabled = false;</p><p><b>  }</b></p><p>  if (intCurrentPageUnde == 0)</p><p><b>  {</b></p><p>  lbnPrevPageUnde.Enabled = fa

88、lse;</p><p><b>  }</b></p><p>  lblCurrentPageUnde.Text = (intCurrentPageUnde + 1).ToString();</p><p>  this.updatepanelOrderUndeliverd.Update();</p><p><

89、;b>  }</b></p><p><b>  /*</b></p><p>  *創(chuàng)建gridview的數(shù)據(jù),通過strDe_UnDe來判斷是哪個</p><p><b>  */</b></p><p>  protected ICollection CreateSource

90、Order(string strSelOrder, string strDe_UnDe)</p><p><b>  {</b></p><p>  SqlCommand sqlCmd = new SqlCommand(strSelOrder, sqlConn);</p><p>  DataTable dtOrders = new DataT

91、able();</p><p>  dtOrders.Columns.Add("ID", typeof(int));</p><p>  dtOrders.Columns.Add("MembID", typeof(int));</p><p>  dtOrders.Columns.Add("MembName"

92、;, typeof(string));</p><p>  dtOrders.Columns.Add("TotalNum", typeof(int));</p><p>  dtOrders.Columns.Add("TotalMoney", typeof(decimal));</p><p>  dtOrders.Colum

93、ns.Add("OrderTime", typeof(string));</p><p>  dtOrders.Columns.Add("HaveDinnerTime", typeof(string));</p><p>  dtOrders.Columns.Add("Location", typeof(string));<

94、/p><p>  dtOrders.Columns.Add("OrderID", typeof(int));</p><p>  int intStartIndex = 0;</p><p>  if (strDe_UnDe == "De")</p><p><b>  {</b>&l

95、t;/p><p>  intStartIndex = intCurrentPageDe * intPageSize;</p><p>  dtOrders.Columns.Add("DeliverTime", typeof(string));</p><p><b>  }</b></p><p><

96、;b>  else</b></p><p><b>  {</b></p><p>  intStartIndex = intCurrentPageUnde * intPageSize;</p><p><b>  }</b></p><p>  int i = 0, j = in

97、tStartIndex + 1; </p><p>  if (sqlConn.State == ConnectionState.Closed)</p><p><b>  {</b></p><p>  sqlConn.Open();</p><p><b>  }</b></p>

98、<p>  SqlDataReader dr = sqlCmd.ExecuteReader();</p><p>  while (dr.Read())</p><p><b>  {</b></p><p><b>  i++;</b></p><p>  if (i > intS

99、tartIndex && i <= intStartIndex + intPageSize)</p><p><b>  {</b></p><p>  DataRow drow = dtOrders.NewRow();</p><p>  drow["ID"] = j++;</p>&l

100、t;p>  drow["MembID"] = dr["ID"];</p><p>  drow["TotalNum"] = dr["NUM"];</p><p>  drow["TotalMoney"] = dr["MONEY"];</p><p

101、>  drow["OrderTime"] = dr["OTIME"];</p><p>  drow["HaveDinnerTime"] = dr["HDTIME"];</p><p>  drow["Location"] = dr["ADDR"];</p&g

102、t;<p>  drow["OrderID"] = dr["ODID"];</p><p>  if(strDe_UnDe == "De")</p><p><b>  {</b></p><p>  drow["DeliverTime"] = dr[

103、"DTIME"];</p><p><b>  }</b></p><p>  dtOrders.Rows.Add(drow);</p><p><b>  }</b></p><p>  if (i > (intStartIndex + intPageSize))<

104、/p><p><b>  {</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  dr.Close();</p>&

105、lt;p>  sqlConn.Close();</p><p>  for (int k = 0; k < dtOrders.Rows.Count; k++ )</p><p><b>  {</b></p><p>  dtOrders.Rows[k]["MembName"] = SelectName_ID(i

106、nt.Parse(dtOrders.Rows[k]["MembID"].ToString()), "MembID", "MembName", "Member");</p><p><b>  }</b></p><p>  return dtOrders.DefaultView;</

107、p><p><b>  }</b></p><p>  為了實現(xiàn)訂單處理,在負責顯示的GridView中添加一個鏈接按鈕,顯示的標題欄為“更改狀態(tài)”,在數(shù)據(jù)欄中顯示的內(nèi)容為“未送出”,管理員只要點擊這個鏈接就可以將該訂單的狀態(tài)改為“已處理”。由于在GirdView中每個數(shù)據(jù)的鏈接按鈕都是相同的,所以在這個鏈接按鈕上使用了CommandName來綁定GridView中的Or

108、derID,在后臺中讀取到這個ID,然后再更改數(shù)據(jù)庫中該ID的狀態(tài)。在實現(xiàn)顯示訂單詳情上也采用了類似的方法,這里不再詳述。(代碼如下)</p><p><b>  /*</b></p><p>  * 點擊“未送出”鏈接按鈕后觸發(fā)的修改訂單的狀態(tài)事件</p><p><b>  */</b></p><

109、p>  protected void lkbtnChangeStatue_Command(object sender, CommandEventArgs e)</p><p><b>  {</b></p><p>  int intOrderIDUnde = int.Parse(e.CommandName.ToString());</p><

110、;p>  string strUpdateOrderState = "UPDATE [Orders] SET Deliverd = '已送出' WHERE OrderID = " + intOrderIDUnde + ";";</p><p>  string strUpdateOrderDeliverTime = "UPDATE [Orde

111、rs] SET DeliverTime = '" + DateTime.Now.ToString() + "' WHERE OrderID = " + intOrderIDUnde + ";";</p><p>  SqlCommand sqlcmd = new SqlCommand(strUpdateOrderState, sqlConn);&

112、lt;/p><p>  SqlCommand sqlcmd2 = new SqlCommand(strUpdateOrderDeliverTime, sqlConn);</p><p>  if(ConnectionState.Closed == sqlConn.State)</p><p><b>  {</b></p><p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論