基于ASP.NET網(wǎng)絡(luò)投票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).doc_第1頁(yè)
基于ASP.NET網(wǎng)絡(luò)投票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).doc_第2頁(yè)
基于ASP.NET網(wǎng)絡(luò)投票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).doc_第3頁(yè)
基于ASP.NET網(wǎng)絡(luò)投票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).doc_第4頁(yè)
基于ASP.NET網(wǎng)絡(luò)投票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).doc_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

目 錄基于ASP.NET網(wǎng)絡(luò)投票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要利用網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)技術(shù),結(jié)合目前互聯(lián)網(wǎng)寬帶的普遍接入的新形勢(shì),讓用戶通過互聯(lián)網(wǎng)進(jìn)行投票,如投票選舉,可以大大提高投票率,同時(shí)節(jié)省了調(diào)查問卷等有形物資的花費(fèi),以及投票人和檢票員的時(shí)間。目前各種網(wǎng)站的投票調(diào)查模塊,其后臺(tái)數(shù)據(jù)庫(kù)的Web操作較多采用ASP或是PHP技術(shù)結(jié)合數(shù)據(jù)庫(kù)的方法實(shí)現(xiàn)。而本文提出了基于B/S模式的ASP.NET技術(shù)結(jié)合數(shù)據(jù)庫(kù)的方案,其中重點(diǎn)介紹了如何實(shí)現(xiàn)ASP.NET連接各種數(shù)據(jù)庫(kù)的Web功能。并對(duì)ASP.NET技術(shù)與數(shù)據(jù)庫(kù)連接方法進(jìn)行介紹、分析,突出了C#平臺(tái)和增強(qiáng)數(shù)據(jù)庫(kù)安全的優(yōu)勢(shì),而且簡(jiǎn)化了Web應(yīng)用系統(tǒng)的工作。關(guān)鍵詞:ASP.NET 網(wǎng)絡(luò)投票 數(shù)據(jù)庫(kù)前言隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的深入發(fā)展,計(jì)算機(jī)技術(shù)的應(yīng)用也日益普及,涉及人們工作、學(xué)習(xí)和生活的方方面面,大大提高了效率。信息資源也得到了最大程度的共享,促進(jìn)了社會(huì)各個(gè)領(lǐng)域的發(fā)展。例如,網(wǎng)絡(luò)投票系統(tǒng)是應(yīng)用計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用的一個(gè)方面,能夠及時(shí)收集人們對(duì)于某個(gè)事物的看法、建議,而且是一種民主和自由形式的體現(xiàn)。在線投票功能是網(wǎng)站應(yīng)用程序最常用的功能之一,也是網(wǎng)站應(yīng)用程序開發(fā)常用的功能模塊。當(dāng)網(wǎng)站管理員或用戶提出一些新的想法與建議或者出現(xiàn)一種新的產(chǎn)品是否滿足用戶或者客戶的需求,另外網(wǎng)站還可以通過在線投票功能做一些實(shí)際性的調(diào)查工作。本課題介紹的網(wǎng)絡(luò)投票系統(tǒng)實(shí)現(xiàn)了投票信息結(jié)果的圖形化顯示,對(duì)投票情況的實(shí)時(shí)查看。當(dāng)今在各種大大小小的網(wǎng)站中,各種類型的Web投票調(diào)查模塊基本上是基于C/S體系結(jié)構(gòu),使用ASP技術(shù)開發(fā)。但是為了加快訪問速度以及增強(qiáng)模塊操作的安全性和實(shí)現(xiàn)模塊的可移植性,后臺(tái)數(shù)據(jù)庫(kù)逐漸由C/S模式向B/S模式過渡。相比較而言,B/S模式有以下優(yōu)勢(shì):應(yīng)用程序在部署、升級(jí)、維護(hù)以用在服務(wù)器端進(jìn)行配置時(shí),它提高了系統(tǒng)的安全性。腳本語言開發(fā)也逐漸由ASP技術(shù)向JSP、ASP.NET技術(shù)發(fā)展。本文中,作者主要完成服務(wù)器端的用戶管理、投票項(xiàng)管理功能;投票主題管理;編輯投票項(xiàng);編輯投票主題功能模塊的設(shè)計(jì)、實(shí)現(xiàn)與完善以及整個(gè)實(shí)驗(yàn)網(wǎng)站的組織建立和測(cè)試工作。第一章 ASP.NET介紹ASP.NET是Microsoft.NET的一部分,作為戰(zhàn)略產(chǎn)品,它不僅是Active Server Page(ASP)的下一個(gè)版本,還提供了一個(gè)統(tǒng)一的Web開發(fā)模型,其中包括了開發(fā)人員生成企業(yè)級(jí)Web應(yīng)用程序所需的各種服務(wù)。ASP.NET的語法在很大程度上與ASP兼容,同時(shí)它還提供一種新的編程模型和結(jié)構(gòu)(Code behind),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護(hù)。ASP.NET提供了穩(wěn)定的性能、優(yōu)秀的升級(jí)性、更快速的開發(fā)、更簡(jiǎn)便的管理、全新的語言以及網(wǎng)絡(luò)服務(wù)。貫穿整個(gè)A5PNET的主題就是系統(tǒng)幫用戶做了大部分不重要的瑣碎的工作。ASP.NET是一個(gè)己編譯的、基于.NET的開發(fā)環(huán)境,可以用任何與.NET兼容的語言來構(gòu)建應(yīng)用程序。另外,任何ASP.NET應(yīng)用程序都可以使用整個(gè).NET Framework。開發(fā)人員可以非常方便地應(yīng)用這些特性,其中包括托管的公共語言運(yùn)行庫(kù)環(huán)境、類型安全,以及靈活使用各種軟件開發(fā)技術(shù):面向?qū)ο?、?duì)象組件、面向服務(wù)等。快速發(fā)展的分布式應(yīng)用也需要更快速、更模塊化、更易操作、更多平臺(tái)支持和重復(fù)利用性更強(qiáng)的開發(fā),需要一種新的技術(shù)來適應(yīng)不同的系統(tǒng),網(wǎng)絡(luò)應(yīng)用和網(wǎng)站需要提供一種更加強(qiáng)大的可升級(jí)的服務(wù)。這些都是ASP.NET力所能及的。在.NET平臺(tái)上,ASP.NET的出現(xiàn)給原有的軟件開發(fā)模式帶來了一場(chǎng)全新的技術(shù)革命,頓時(shí)間新的B/S(Browser/Server)架構(gòu)開發(fā)模式鋪天蓋地,也解脫了無數(shù)奮戰(zhàn)在前線的ASP程序員的重?fù)?dān)。真可謂是一個(gè)跨時(shí)代的產(chǎn)品,解決了很多以前ASP中沒能解決的問題。而隨著時(shí)間的推移,也就在短短的這幾年時(shí)間里,強(qiáng)大的微軟帝國(guó)又陸續(xù)推出了更多的.NET版本:.NET2.0、.NET30、.NET3.5、.NET4.0。同時(shí)也相繼出現(xiàn)了Visual Studio 20XX、Visual Studio 20XX版本,Visual Studio 20XX。毋庸置疑,它們?yōu)殚_發(fā)人員提供了更多的新特性以便能更快速便捷地構(gòu)建應(yīng)用程序。1.1 ASP.NET的優(yōu)勢(shì)ASP.NET的總體框架如1-1圖所示,主要包括以下幾部分:Web窗體頁(yè)面、ASP.NET服務(wù)器組件、后臺(tái)邏輯代碼文件、DLL編譯文件。Web窗體頁(yè)面包括元素、服務(wù)器組件,后臺(tái)邏輯代碼文件包含了窗體頁(yè)面的應(yīng)用邏輯,DLL編譯文件傳送動(dòng)態(tài)的到Web服務(wù)器。其設(shè)計(jì)的主要目標(biāo)是:(1)代碼更清晰(2)提高可部署性、可伸縮性、安全性用可靠性(3)為不同的瀏覽器和調(diào)和提供更好的支持(4)支持一種全新的Web應(yīng)用程序Server ControlsHTML ControlsASP.NETADO.NETWeb ServicesSecurityEtc.WebForm圖1-1 ASP.NET的總體框架1.1.1 多語言支持ASP使用的是腳本語言,也就是直譯式語言,只有在ASP被調(diào)用時(shí)才通過腳本引擎一邊檢查語法,一邊執(zhí)行,所以在程序執(zhí)行前是無法知道程序有沒有錯(cuò)誤的。另外,腳本語言中無法聲明數(shù)據(jù)類型,所以ASP中所有的變量預(yù)設(shè)的數(shù)據(jù)類型都是Variant,這些都引起程序員極大不便。而ASP.NET的多語言支持特性,將程序員從不夠嚴(yán)謹(jǐn)?shù)哪_本語言中解放出來,ASP.NET使用的是編譯式語言,支持的語言包括:Visual Basic .NET、C#、C+、JScript、COBOL、Pascal、Perl及Small Talk等,而程序員也不需要掌握所有語言,卻可以輕松調(diào)用其他程序員開發(fā)的第三方組件,以達(dá)到實(shí)現(xiàn)所需功能的目的。1.1.2 效率當(dāng)客戶端第一次調(diào)用ASP.NET頁(yè)面時(shí),會(huì)經(jīng)過一次復(fù)雜的編譯過程,編譯生成MSIL文件,并存儲(chǔ)在本地機(jī)上,然后退過JIT(Just in time)編譯器進(jìn)行再編譯,成為優(yōu)化的CLR代碼,這樣除了第一次要經(jīng)過復(fù)雜編譯外,以后每次執(zhí)行都會(huì)在內(nèi)存中保留這份機(jī)器碼作為快取,使網(wǎng)頁(yè)執(zhí)行速度大幅提高。1.1.3 大量工具箱和函數(shù)庫(kù)的支持在Visual Studio的開發(fā)環(huán)境中,ASP.NET具有豐富的工具箱和設(shè)計(jì)器,比如所見即所得的編輯方式、支持拖放的服務(wù)器控件以及動(dòng)態(tài)的配置管理。.NET Framework還提供了大量現(xiàn)成的基類函數(shù),程序員可以直接調(diào)用這些函數(shù)。1.1.4 超強(qiáng)的擴(kuò)展性ASP.NET允許程序員開發(fā)自己的插件,而且任何一個(gè)組件都可以被程序員自己開發(fā)的組件擴(kuò)展或替換。1.1.5 易用性ASP.NET允許建立用戶接口,這樣可以把代碼和程序結(jié)構(gòu)分離,寫程序的人只需要考慮程序的結(jié)構(gòu),而不需要考慮怎樣去書寫代碼。1.1.6 配置管理方式ASP.NET使用一種基于文本格式、等級(jí)式的配置系統(tǒng),這種方式使得應(yīng)用服務(wù)器環(huán)境和Web應(yīng)用的設(shè)置更加簡(jiǎn)單,新設(shè)置將不再需要本地管理工具。服務(wù)器上控件的替換和修改也不再需要重啟服務(wù)器。1.2 ASP應(yīng)用程序的安全性安全性是對(duì)用戶的身份進(jìn)行驗(yàn)證,并對(duì)通過驗(yàn)證的用戶按照為其授予的訪問權(quán)限來確定用戶是否可以訪問某種資源的一個(gè)過程。ASP.NET與IIS、.NET Framework和操作系統(tǒng)的底層安全性服務(wù)相結(jié)合,可以實(shí)現(xiàn)多種身份驗(yàn)證和授權(quán)機(jī)制,如圖1-2所示。一個(gè)ASP.NET應(yīng)用程序的總的安全性是由以下3個(gè)不同層級(jí)組成。1.IIS級(jí)將一個(gè)有效的安全性令牌(Security Token)與請(qǐng)求的發(fā)送者相關(guān)聯(lián)。該安全性令牌根據(jù)當(dāng)前的IIS身份驗(yàn)證機(jī)制確定。2.ASP.NET工作進(jìn)程級(jí)確定ASP.NET工作進(jìn)程中服務(wù)請(qǐng)求的線程的身份。如果啟用了假冒設(shè)置,可能會(huì)改變與該線程關(guān)聯(lián)的安全性令牌。根據(jù)正在使用的進(jìn)程模型,其安全性令牌由配置文件或IIS原數(shù)據(jù)庫(kù)中的設(shè)置決定。3.ASP.NET管道級(jí)獲得使用應(yīng)用程序的特定用戶的身份。該任務(wù)的完成方式取決于配置文件中用于身份驗(yàn)證和授權(quán)的應(yīng)用程序設(shè)置。大多數(shù)ASP.NET應(yīng)用程序的常見設(shè)置是使用窗體驗(yàn)證。圖1-2 安全體系結(jié)構(gòu)1.3 小結(jié)ASP.NET從原來的ASP結(jié)構(gòu)體系上跨出了一大步,其整個(gè)構(gòu)造體系使開發(fā)結(jié)構(gòu)化的應(yīng)用程序變?yōu)榭赡?。Web表單帶來了一種更加直接和易于使用的開發(fā)模式:服務(wù)器控件增加了提供公共功能的能力,從而使擴(kuò)展和加強(qiáng)現(xiàn)有功能變得容易;數(shù)據(jù)捆綁使創(chuàng)建數(shù)據(jù)約束型應(yīng)用程序變得十分簡(jiǎn)單。ASP.NET不但具有許多很強(qiáng)的新功能,而且為用戶提供了一個(gè)用于開發(fā)Web應(yīng)用程序的真正框架。安全性是計(jì)算機(jī)網(wǎng)絡(luò)安全的重要環(huán)節(jié),也是計(jì)算機(jī)網(wǎng)絡(luò)安全體系結(jié)構(gòu)的基礎(chǔ)性組成部分,通過采用各種安全策略,才能更好地實(shí)現(xiàn)網(wǎng)絡(luò)系統(tǒng)的安全性。第二章 應(yīng)用程序的體系結(jié)構(gòu)隨著Web技術(shù)的出現(xiàn),時(shí)期網(wǎng)絡(luò)中的集中計(jì)算逐漸被分布式計(jì)算所代替。Web技術(shù)是一種分布式計(jì)算技術(shù),使用這種技術(shù)構(gòu)建企業(yè)應(yīng)用時(shí),通常需要開發(fā)大量的程序,把這些程序分布在不同的計(jì)算機(jī)上,在應(yīng)用中承擔(dān)不同的職責(zé)。本章介紹三層結(jié)構(gòu)應(yīng)用程序的概念和優(yōu)點(diǎn),并結(jié)合分析如何建立三層結(jié)構(gòu)的ASP.NET應(yīng)用程序。2.1 傳統(tǒng)的C/S模式在傳統(tǒng)的應(yīng)用程序開發(fā)中,C/S(Client/Server)二層體系結(jié)構(gòu)得到了廣泛的應(yīng)用。二層體系結(jié)構(gòu)的特點(diǎn)是應(yīng)用程序邏輯通常分布在客戶和服務(wù)器兩端。客戶發(fā)出對(duì)數(shù)據(jù)資源的訪問請(qǐng)求,服務(wù)端將對(duì)該請(qǐng)求的響應(yīng)結(jié)果返回客戶端。每一個(gè)客戶端都都存在數(shù)據(jù)引擎,并且每個(gè)客戶端與數(shù)據(jù)庫(kù)服務(wù)器建立獨(dú)立的數(shù)據(jù)庫(kù)連接(DB Connection)。數(shù)據(jù)表示層邏輯計(jì)算與數(shù)據(jù)處理放在同一層客戶機(jī)應(yīng)用服務(wù)器數(shù)據(jù)庫(kù)服務(wù)器圖2-1 客戶機(jī)/服務(wù)器模式C/S結(jié)構(gòu)本身存在著很多體系結(jié)構(gòu)上的問題,比如:一旦用戶的應(yīng)用需求發(fā)生變化,客戶端和服務(wù)器端的應(yīng)用程序都需要進(jìn)行修改,這給應(yīng)用維護(hù)和升級(jí)帶來了極大的不便:當(dāng)客戶端數(shù)量激增時(shí),服務(wù)器端的性能會(huì)因?yàn)樨?fù)載過重而大大衰減;大量的數(shù)據(jù)傳輸增加了網(wǎng)絡(luò)的負(fù)載等等。2.2 三層架構(gòu)模型按照Web應(yīng)用程序的功能要素的基本要求,把應(yīng)用程序架構(gòu)分為如下三層:表示層(Presentation Layer):表現(xiàn)層通過與用戶交互界面,調(diào)用業(yè)務(wù)層接口傳遞用戶請(qǐng)求信息以及獲取所返回的信息。業(yè)務(wù)層(Business Tier):業(yè)務(wù)層用于訪問數(shù)據(jù)層,從數(shù)據(jù)層取數(shù)據(jù)、修改數(shù)據(jù)以及刪除數(shù)據(jù),并將結(jié)果返回給表現(xiàn)層。該層除了實(shí)現(xiàn)應(yīng)用程序功能外,還包括用戶數(shù)據(jù)的驗(yàn)證及各類計(jì)算等。數(shù)據(jù)層(Data Tier):數(shù)據(jù)層是數(shù)據(jù)庫(kù)或者數(shù)據(jù)源,如SQL Server、Access、Oracle數(shù)據(jù)庫(kù)或XML文件。Web應(yīng)用程序的三層架構(gòu)模型如圖2-2所示:處理用戶請(qǐng)求訪問數(shù)據(jù)庫(kù)表現(xiàn)層業(yè)務(wù)層數(shù)據(jù)層接受用戶請(qǐng)求數(shù)據(jù)庫(kù)圖2-2 Web應(yīng)用程序分層2.3 開發(fā)三層架構(gòu)ASP.NET應(yīng)用程序的方法C#業(yè)務(wù)邏輯組件數(shù)據(jù)訪問組件Web服務(wù)器應(yīng)用服務(wù)器數(shù)據(jù)庫(kù)服務(wù)器ASP.NET Web窗體數(shù)據(jù)庫(kù)ASP.NET可以使用.NET平臺(tái)快速方便地開發(fā)和部署三層架構(gòu)應(yīng)用程序。表現(xiàn)層通過Web窗體來實(shí)現(xiàn),包括.ASPX文件及相應(yīng)的后臺(tái).CS文件。業(yè)務(wù)層通常包括兩個(gè)組件(也稱為兩個(gè)子層),業(yè)務(wù)邏輯層(Business Logic Layer,BLL)和數(shù)據(jù)訪問層(Data Access Layers,DAL)。業(yè)務(wù)邏輯層在數(shù)據(jù)訪問層之上,也就是說BLL調(diào)用DAL的類和對(duì)象。DAL訪問數(shù)據(jù)并將其轉(zhuǎn)給BLL。數(shù)據(jù)層則是.NET支持的數(shù)據(jù)庫(kù)。ASP.NET中三層架構(gòu)如圖2-3所示:圖2-3三層Web應(yīng)用程序架構(gòu)2.4 小結(jié)ASP.NET三層架構(gòu)是將Web應(yīng)用程序分成數(shù)據(jù)表示層、邏輯計(jì)算層、數(shù)據(jù)處理層,其解決方案是對(duì)這三層進(jìn)行明確分割,并在邏輯上使其獨(dú)立。這樣大大提高了系統(tǒng)模塊的復(fù)用性,縮短開發(fā)周期,降低維護(hù)費(fèi)用。其次,系統(tǒng)的擴(kuò)展性大大增強(qiáng)。由于系統(tǒng)是模塊化的,使得系統(tǒng)很容易擴(kuò)展,一方面可以將系統(tǒng)升級(jí)為更大、更有力的平臺(tái),同時(shí)也可以適當(dāng)增加規(guī)模增強(qiáng)系統(tǒng)的網(wǎng)絡(luò)應(yīng)用。第三章 ASP.NET開發(fā)數(shù)據(jù)庫(kù)技術(shù)數(shù)據(jù)訪問已經(jīng)成為現(xiàn)代軟件開發(fā)中一個(gè)主要的任務(wù),對(duì)于單獨(dú)工作的應(yīng)用程序或者是基于Web的應(yīng)用程序都是如此。ADO.NET技術(shù)作為.NET框架中的一部分提供了一個(gè)解決許多和數(shù)據(jù)訪問有關(guān)問題的通用解決方案。創(chuàng)建基于Web的應(yīng)用程序時(shí)我們可以在ASP.NET中使用ADO.NET技術(shù)來通過網(wǎng)絡(luò)和Web進(jìn)行數(shù)據(jù)訪問。3.1 基本概念A(yù)DO.NET技術(shù)是一個(gè)基于標(biāo)準(zhǔn)的面向創(chuàng)建分布式數(shù)據(jù)共享應(yīng)用程序的編程模型,是ADO(ActiveX Data objects)技術(shù)的延伸和發(fā)展,但是它帶來了比AD0技術(shù)更為優(yōu)越的互操作性、可維護(hù)性、可編程性和更出色的性能。ADO.NET包含了眾多的類,程序員通過使用這些類來獲得數(shù)據(jù)訪問服務(wù)。這些類位于.NET類庫(kù)中,可以被任何基于.NET設(shè)計(jì)的應(yīng)用程序使用,包括前端的數(shù)據(jù)庫(kù)客戶程序、中間層的各種應(yīng)用程序、工具、語言或者瀏覽器調(diào)用的業(yè)務(wù)邏輯對(duì)象。ADO.NET使用XML作為一般的數(shù)據(jù)傳輸格式,因此,只要接收數(shù)據(jù)一方使用一個(gè)XML解析器便可以解析出數(shù)據(jù),具有更優(yōu)越的互操作性。為了將數(shù)據(jù)訪問和數(shù)據(jù)操縱分離開來,ADO.NET使用了兩種組件:DataSet對(duì)象和.NET數(shù)據(jù)提供者。DataSet對(duì)象在ADO.NET中處于核心地位,它提供了一個(gè)與數(shù)據(jù)來源無關(guān)的數(shù)據(jù)表示方式,可以表示存儲(chǔ)和管理來自遠(yuǎn)程或本地?cái)?shù)據(jù)庫(kù)XML文件或數(shù)據(jù)流甚至應(yīng)用程序的局部數(shù)據(jù)。一個(gè)DataSet對(duì)象包含了一個(gè)DataTable的集合屬性,用來放置一個(gè)或多個(gè)DataTable對(duì)象。DataTable對(duì)象對(duì)應(yīng)于關(guān)系數(shù)據(jù)庫(kù)中的表的概念,用來容納以行列形式組織起來的數(shù)據(jù)和主鍵約束關(guān)系等信息。.NET數(shù)據(jù)提供者是ADO.NET體系中的另一個(gè)核心元素,.NET程序員使用該元素中包含的一些子元素來實(shí)現(xiàn)對(duì)實(shí)際數(shù)據(jù)的操縱。這些操縱的結(jié)果或者被直接處理,或者被放到DataSet對(duì)象中。.NET數(shù)據(jù)提供考是一個(gè)數(shù)據(jù)源和代碼間的一個(gè)盡可能小的層,從而在不犧牲功能的前提下提高性能。3.2 ADO.NET數(shù)據(jù)庫(kù)訪問流程ADONET對(duì)數(shù)據(jù)訪問過程分成了幾個(gè)層次的抽象,每個(gè)層次對(duì)應(yīng)了一系列類對(duì)象。直接和數(shù)據(jù)源交互的對(duì)象是Connection對(duì)象,所有對(duì)數(shù)據(jù)源的操作命令存儲(chǔ)過程參數(shù)和數(shù)據(jù)都是在一定的Connection對(duì)象上面運(yùn)行,所有向數(shù)據(jù)源發(fā)送的送貨請(qǐng)求和在數(shù)據(jù)源與應(yīng)用程序之間交互的數(shù)據(jù)都在其上通過,因此為了訪問數(shù)據(jù)源中的數(shù)據(jù),首要做的就是建立起一條合適的Connection通道,不僅如此,還應(yīng)該向數(shù)據(jù)源提供合適的信息。最后真正在內(nèi)存中容納了數(shù)據(jù)的對(duì)象是DataSet對(duì)象,DataSet對(duì)象使用DataAdapter對(duì)象宋代理同Connection對(duì)象和mand對(duì)象之間的交互,這樣DataAdapter對(duì)象可以為DataSet對(duì)象隱藏掉和Connection及mand對(duì)象之間的交互細(xì)節(jié),從而保證了DataSet對(duì)象的數(shù)據(jù)源無關(guān)性。DataAdapter還負(fù)責(zé)DataSet對(duì)象中的數(shù)據(jù)和數(shù)據(jù)庫(kù)中的數(shù)據(jù)的同步問題,這是因?yàn)镈ataSet對(duì)象提供的是無連接的數(shù)據(jù)訪問服務(wù)。另外,DataSet對(duì)象是與數(shù)據(jù)源無關(guān)的,而且可以容納多個(gè)表,只要使用不同的Connection和mand對(duì)象,在數(shù)據(jù)庫(kù)向D血Set對(duì)象傳送完數(shù)據(jù)后,如果不再需要Connection通道和mand對(duì)象,它們便可以關(guān)閉,因?yàn)閭魉秃驞ataSet對(duì)象便與數(shù)據(jù)源斷開了。其流程大致可以總結(jié)如下:(1)創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)鏈路;(2)請(qǐng)求個(gè)記錄集合;(3)把記錄集合暫存到DataSet;(4)如果需要,返回第2步;(DataSet可以容納多個(gè)數(shù)據(jù)集合)(5)關(guān)閉數(shù)據(jù)庫(kù)鏈路;(6)在DataSet 上作所需要的操作。3.3 小結(jié)ASP.NET的許多優(yōu)越性為Web服務(wù)提供了一種無疑組合、跨平臺(tái)、跨語言的應(yīng)用程序的強(qiáng)大方式,造就了一類新的更加動(dòng)態(tài)更具伸縮性的應(yīng)用程序。這種應(yīng)用程序能夠更好地滿足客戶的商業(yè)需求。第四章 網(wǎng)絡(luò)投票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)4.1 系統(tǒng)需求分析4.1.1 目標(biāo)在線投票功能是網(wǎng)站應(yīng)用程序最常用的功能之一,也是網(wǎng)站應(yīng)用程序開發(fā)常用的功能模塊。當(dāng)網(wǎng)站的管理員或用戶提出一些新的想法與建議或者出現(xiàn)一種新產(chǎn)品時(shí),他們可能需要通過用戶或者客戶的投票方式來確定這些新的想法、建議或者新的產(chǎn)品是否滿足用戶或者客戶的需求,另外,網(wǎng)站還可以通過網(wǎng)站在線投票功能做一些實(shí)際性的調(diào)查工作。隨時(shí)了解市場(chǎng)是一個(gè)企業(yè)擁有強(qiáng)大競(jìng)爭(zhēng)力的必須品,所以在線投票系統(tǒng)可以解決企業(yè)的難題,不受地區(qū)限制,不受人手壓力的限制,隨時(shí)了解產(chǎn)品的市場(chǎng)效應(yīng),增強(qiáng)自己的競(jìng)爭(zhēng)力;此系統(tǒng)將以圖形化的界面來顯示投票結(jié)果,一目了然地回饋客戶的需求信息;4.1.2用戶特點(diǎn)本系統(tǒng)的用戶只需懂得運(yùn)用互聯(lián)網(wǎng)絡(luò)者均可以使用,此系統(tǒng)在網(wǎng)站中的使用頻度預(yù)計(jì)非常的頻繁。4.1.3 對(duì)性能的要求和約束該系統(tǒng)屬于實(shí)用型網(wǎng)站,需要對(duì)數(shù)據(jù)的處理,比如對(duì)投票票數(shù)的統(tǒng)計(jì)并把結(jié)果反饋給投票者,故對(duì)數(shù)據(jù)的及時(shí)更新要求較高,保證數(shù)據(jù)的真實(shí)性.該系統(tǒng)在任何操作系統(tǒng)下都可以運(yùn)行,但必須裝有SQL2000以上版本的數(shù)據(jù)庫(kù)。4.2 投票系統(tǒng)的組成模塊該系統(tǒng)主要由以下六個(gè)模塊組成:登陸注冊(cè)模塊、管理員模塊、客戶模塊、投票模塊、留言簿模塊。如下圖4-1所示:投票系統(tǒng)登錄注冊(cè)模塊投票模塊管理員模塊留言模塊客戶模塊圖4-1 系統(tǒng)組成圖4.2.1 客戶模塊客戶模塊主要功能是添加投票項(xiàng)目信息,如投票主題、選項(xiàng)用系統(tǒng)配置要求。4.2.2 留言簿模塊留言簿模塊主要是投票者對(duì)于本系統(tǒng)提出問題,包括留言和管理員回復(fù)模塊。4.2.3 管理員模塊管理員模塊是指管理員對(duì)項(xiàng)目進(jìn)行的管理模塊,包括項(xiàng)目的管理,選項(xiàng)的管理以用系統(tǒng)設(shè)置的管理,可以對(duì)項(xiàng)目進(jìn)行刪除、編輯,選項(xiàng)的刪除,更新和添加,系統(tǒng)配置的刪除和更新。4.2.4登錄注冊(cè)模塊登錄注冊(cè)主要為管理員和客戶進(jìn)入相應(yīng)權(quán)限的橋梁。4.2.5投票模塊4.3 系統(tǒng)操作流程圖4-2 系統(tǒng)流程圖4.4 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)圖4-3 系統(tǒng)界面4.4.1 登錄、注冊(cè)模塊設(shè)計(jì)與實(shí)現(xiàn)(1)功能描述管理員和客戶登錄入口,根據(jù)身份從而跳轉(zhuǎn)到相應(yīng)頁(yè)面,注冊(cè)為客戶提供注冊(cè)功能。輸入處理輸出登錄基本信息系統(tǒng)登錄處理登錄結(jié)果圖4-4 登錄流程輸入處理輸出1.會(huì)員注冊(cè)信息2.重新輸入密碼1.會(huì)員注冊(cè)2.密碼修改1.注冊(cè)結(jié)果信息2.成功修改信息圖4-5 注冊(cè)流程(2)界面設(shè)計(jì)與實(shí)現(xiàn)圖4-6 注冊(cè)窗口4.4.2 投票模塊的設(shè)計(jì)與實(shí)現(xiàn)(1)功能描述投票模塊為游客選擇投票本項(xiàng)目,并根據(jù)項(xiàng)目模式跳轉(zhuǎn)到相應(yīng)投票頁(yè)面進(jìn)行投票,對(duì)系統(tǒng)配置進(jìn)行檢測(cè),并可以查詢結(jié)果。1投票項(xiàng)目信息2選項(xiàng)信息1模式判斷2系統(tǒng)配置檢測(cè)3數(shù)據(jù)庫(kù)信息更新返回投票信息輸入處理輸出圖4-7 投票流程(2)界面設(shè)計(jì)與實(shí)現(xiàn)如圖4-8所示。圖4-8 投票界面4.4.3 留言簿模塊的設(shè)計(jì)與實(shí)現(xiàn)(1)功能描述該模塊包括留言和回復(fù)兩個(gè)功能。1留言基本信息2回復(fù)信息數(shù)據(jù)庫(kù)更新返回結(jié)果輸入處

溫馨提示

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

評(píng)論

0/150

提交評(píng)論