計(jì)算機(jī)網(wǎng)絡(luò)企業(yè)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文_第1頁
計(jì)算機(jī)網(wǎng)絡(luò)企業(yè)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文_第2頁
計(jì)算機(jī)網(wǎng)絡(luò)企業(yè)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文_第3頁
計(jì)算機(jī)網(wǎng)絡(luò)企業(yè)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文_第4頁
計(jì)算機(jī)網(wǎng)絡(luò)企業(yè)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、附件8:畢業(yè)設(shè)計(jì)(論文)題目:金米蘭咖啡企業(yè)網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)系部:信息技術(shù)系專業(yè):計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)學(xué)號(hào): 學(xué)生姓名: 導(dǎo)師姓名:導(dǎo)師職稱: 教師二一五年 一月TOC o 1-3 h u HYPERLINK l _Toc15528 摘 要 PAGEREF _Toc15528 4 HYPERLINK l _Toc3327 引言 PAGEREF _Toc3327 4 HYPERLINK l _Toc11125 第一章 緒論 PAGEREF _Toc11125 5 HYPERLINK l _Toc23188 PAGEREF _Toc23188 5 HYPERLINK l _Toc17117 1.2 構(gòu)架

2、系統(tǒng) PAGEREF _Toc17117 5 HYPERLINK l _Toc10628 第二章 可行性分析 PAGEREF _Toc10628 8 HYPERLINK l _Toc21950 PAGEREF _Toc21950 8 HYPERLINK l _Toc13424 PAGEREF _Toc13424 8 HYPERLINK l _Toc8812 第三章 動(dòng)態(tài)網(wǎng)站的開發(fā)技術(shù)及其實(shí)現(xiàn) PAGEREF _Toc8812 9 HYPERLINK l _Toc23984 PAGEREF _Toc23984 9 HYPERLINK l _Toc29161 PAGEREF _Toc29161 1

3、1 HYPERLINK l _Toc8741 網(wǎng)站建設(shè)的市場背景 PAGEREF _Toc8741 11 HYPERLINK l _Toc19948 PAGEREF _Toc19948 11 HYPERLINK l _Toc27724 PAGEREF _Toc27724 11 HYPERLINK l _Toc9986 第四章 動(dòng)態(tài)網(wǎng)站的總體模塊設(shè)計(jì) PAGEREF _Toc9986 12 HYPERLINK l _Toc8832 前臺(tái)功能模塊總體設(shè)計(jì) PAGEREF _Toc8832 12 HYPERLINK l _Toc26263 后臺(tái)功能模塊總體設(shè)計(jì) PAGEREF _Toc26263 1

4、2 HYPERLINK l _Toc2640 數(shù)據(jù)庫模塊總體設(shè)計(jì) PAGEREF _Toc2640 13 HYPERLINK l _Toc21535 第五章 三層架構(gòu)代碼實(shí)現(xiàn)及頁面展示 PAGEREF _Toc21535 16 HYPERLINK l _Toc2289 模型層 PAGEREF _Toc2289 16 HYPERLINK l _Toc13346 5.2 數(shù)據(jù)訪問層 PAGEREF _Toc13346 18 HYPERLINK l _Toc15169 業(yè)務(wù)邏輯層 PAGEREF _Toc15169 27 HYPERLINK l _Toc11520 5.4 表示層 PAGEREF _

5、Toc11520 29 HYPERLINK l _Toc20957 PAGEREF _Toc20957 29 HYPERLINK l _Toc18584 PAGEREF _Toc18584 44 HYPERLINK l _Toc2595 結(jié)論 PAGEREF _Toc2595 52 HYPERLINK l _Toc29580 參考文獻(xiàn) PAGEREF _Toc29580 52摘 要隨著互聯(lián)網(wǎng)的飛速發(fā)展,電腦網(wǎng)絡(luò)已應(yīng)用到各個(gè)領(lǐng)域,普及到千家萬戶,無論國內(nèi)還是國外都迅速的發(fā)展起來。現(xiàn)在,網(wǎng)絡(luò)已經(jīng)成為人們快速獲取信息、發(fā)布信息和傳輸信息的主要渠道,成為每個(gè)人生活中的一部分,同時(shí)網(wǎng)絡(luò)也提供了一個(gè)很好的

6、信息交換平臺(tái)。本文講解了一個(gè)公司的網(wǎng)站的建設(shè),它基于數(shù)據(jù)關(guān)聯(lián)的公司個(gè)性化頁面及動(dòng)態(tài)數(shù)據(jù)生成案例,在網(wǎng)頁方面,綜合考慮了頁面色彩、頁面的構(gòu)架,充分的利用了圖片、文字、圖層、表格等元素。網(wǎng)站內(nèi)容明確,層次清楚,達(dá)到了預(yù)期的功能。本系統(tǒng)從中小企業(yè)的實(shí)際需求出發(fā),以ASP.NET為開發(fā)技術(shù),Visual Studio 2010為開發(fā)工具,SQL Server 2008為數(shù)據(jù)庫開發(fā)平臺(tái),設(shè)計(jì)過程中,首先建立了系統(tǒng)的應(yīng)用原型,然后在此基礎(chǔ)上進(jìn)行需求分析,詳細(xì)設(shè)計(jì)時(shí)不斷修正和完善,經(jīng)過測試階段反復(fù)調(diào)試和驗(yàn)證,最終形成達(dá)到設(shè)計(jì)要求的可行系統(tǒng)。關(guān)鍵字: 網(wǎng)站 動(dòng)態(tài) ASP.NET 數(shù)據(jù)庫SQL引言隨著網(wǎng)絡(luò)的普遍

7、應(yīng)用和企業(yè)對(duì)網(wǎng)絡(luò)的重視,越來越多的企業(yè)已經(jīng)意識(shí)到網(wǎng)絡(luò)營銷的重要性。企業(yè)應(yīng)用型網(wǎng)站除了構(gòu)建企業(yè)的網(wǎng)絡(luò)形象,更重視將企業(yè)的日常業(yè)務(wù)延伸到互聯(lián)網(wǎng),通過網(wǎng)絡(luò)進(jìn)一步拓寬網(wǎng)絡(luò)營銷渠道,在這一點(diǎn)上,網(wǎng)站充分利用了互聯(lián)網(wǎng)的媒體優(yōu)勢,使網(wǎng)絡(luò)營銷與傳統(tǒng)營銷有效結(jié)合。擁有一個(gè)網(wǎng)站,我們的企業(yè)就可以向訪問者提供24小時(shí)365天無間斷的完美服務(wù)。為了讓我們的企業(yè)可以充分利用網(wǎng)絡(luò)。本系統(tǒng)實(shí)現(xiàn)了企業(yè)在線宣傳的目的,以減輕企業(yè)宣傳的工作負(fù)擔(dān)及提高工作效率,并能激發(fā)瀏覽用戶的深入了解興趣。本系統(tǒng)主要是利用瀏覽器作為界面,利用B/S模式,即用戶可利用瀏覽器直接訪問本站點(diǎn)。主要用到的技術(shù)是采用ASP.NET(C)技術(shù)和SQL數(shù)據(jù)庫

8、設(shè)計(jì)出了各種功能。本系統(tǒng)主要有用戶管理、新聞系統(tǒng)、留言系統(tǒng)、管理員登錄及管理等功能。本文主要介紹系統(tǒng)的總體設(shè)計(jì)以及著重研究了導(dǎo)航板塊的實(shí)現(xiàn),并在此基礎(chǔ)上建立了后臺(tái)數(shù)據(jù)庫。本系統(tǒng)采用左右框架式,看起來清爽簡潔。登錄系統(tǒng)主要實(shí)現(xiàn)用戶和管理員的交流,用戶管理可以提供查看產(chǎn)品以及修改信息等基本功能;導(dǎo)航欄提供整個(gè)平臺(tái)的架構(gòu)。第一章 緒論在Internet飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟(jì)、生活等各個(gè)方面發(fā)揮著重要的作用。Internet上發(fā)布信息主要是通過網(wǎng)站來實(shí)現(xiàn)的,獲取信息也是要在Internet“海洋”中按照一定的檢索方式將所需要的信息從網(wǎng)站上下

9、載下來。因此網(wǎng)站建設(shè)在Internet應(yīng)用上的地位顯而易見,它已成為政府、企事業(yè)單位信息化建設(shè)中的重要組成部分,從而倍受人們的重視。 網(wǎng)絡(luò)在現(xiàn)代生活中日益盛行,越來越多的人對(duì)此也極為癡迷,隨著網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展, 當(dāng)代企業(yè)紛紛建立自己的網(wǎng)站,借助于互聯(lián)網(wǎng)擴(kuò)大自己的影響、推廣自己的產(chǎn)品,同時(shí)通過互聯(lián)網(wǎng)快速的信息傳遞加速自身的發(fā)展。我將一個(gè)咖啡網(wǎng)站作為我的設(shè)計(jì)項(xiàng)目北京金米蘭咖啡網(wǎng)站1.2 構(gòu)架系統(tǒng) N層架構(gòu)每一層都可以在僅僅更改很少量的代碼后,就能放到物理上不同的服務(wù)器上使用,因此結(jié)構(gòu)靈活而且性能更佳。此外,每層做些什么其它層是完全看不到的,因此更改、更新某層,都不再需要重新編譯或者更改全部的層了

10、。這是個(gè)很強(qiáng)大的功能。例如,如果把數(shù)據(jù)訪問代碼與業(yè)務(wù)邏輯層分離,當(dāng)數(shù)據(jù)庫服務(wù)器更改后,你只需要更改數(shù)據(jù)訪問的代碼,因?yàn)闃I(yè)務(wù)邏輯層是不變的,因此不需要更改或者重新編譯業(yè)務(wù)邏輯層。一個(gè)N層3的應(yīng)用程序通常有三層:表現(xiàn)層、業(yè)務(wù)層和數(shù)據(jù)層。下面讓我們看看每層都做些什么。表現(xiàn)層(Presentation Layer)表現(xiàn)層用于用戶接口的展示,以及用業(yè)務(wù)層的類和對(duì)象來“驅(qū)動(dòng)”這些接口。在中,該層包括aspx頁面、用戶控制、服務(wù)器控制以及某些與安全相關(guān)的類和對(duì)象。業(yè)務(wù)層(Business Tier)業(yè)務(wù)層用于訪問數(shù)據(jù)層,從數(shù)據(jù)層取數(shù)據(jù)、修改數(shù)據(jù)以及刪除數(shù)據(jù),并將結(jié)果返回給表現(xiàn)層。在中,該層包括使用SqlCl

11、ient或OleDb從SQL Server或Access數(shù)據(jù)庫取數(shù)據(jù)、更新數(shù)據(jù)及刪除數(shù)據(jù),并把取得的數(shù)據(jù)放到DataReader或DataSet中返回給表現(xiàn)層。返回的數(shù)據(jù)也許只有一個(gè)整型數(shù)字,比如一個(gè)表的行記錄數(shù)目,但這也要用數(shù)據(jù)層的數(shù)據(jù)進(jìn)行計(jì)算。BLL和DAL通常該層被劃分成兩個(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。在中,該層可以用SqlClient或OleDb從SQL Server或Access數(shù)據(jù)庫取數(shù)

12、據(jù),把數(shù)據(jù)通過DataSet 或DataReader的形式給BLL,BLL處理數(shù)據(jù)給表現(xiàn)層。有的時(shí)候,例如直接把DataSet 或DataReader送給表現(xiàn)層的時(shí)候,BLL是一個(gè)透明層。數(shù)據(jù)層(Data Tier)數(shù)據(jù)層是數(shù)據(jù)庫或者數(shù)據(jù)源。在.NET中,通常它是一個(gè)SQL Server或Access數(shù)據(jù)庫,但不僅限于此兩種形式,它還可能是Oracle,mySQL,甚至是XML。邏輯層VS(分布式)物理層人們?nèi)菀讓⑦@兩個(gè)概念搞混。我們說邏輯層是把層按類的集合來劃分,而這些層都在同一臺(tái)個(gè)服務(wù)器上。(分布式)物理層是指類的集合在不同的服務(wù)器上,用附加的代碼來處理層間的通信,比如remoting和w

13、eb服務(wù)。ASP.NET的優(yōu)勢:增強(qiáng)的性能。ASP.NET 是在服務(wù)器上運(yùn)行的編譯好的公共語言運(yùn)行庫代碼。與被解釋的前輩不同,ASP.NET 可利用早期綁定、實(shí)時(shí)編譯、本機(jī)優(yōu)化和盒外緩存服務(wù)。這相當(dāng)于在編寫代碼行之前便顯著提高了性能。世界級(jí)的工具支持。ASP.NET 框架補(bǔ)充了 Visual Studio 集成開發(fā)環(huán)境中的大量工具箱和設(shè)計(jì)器。WYSIWYG 編輯、拖放服務(wù)器控件和自動(dòng)部署只是這個(gè)強(qiáng)大的工具所提供功能中的少數(shù)幾種。威力和靈活性。由于 ASP.NET 基于公共語言運(yùn)行庫,因此 Web 應(yīng)用程序開發(fā)人員可以利用整個(gè)平臺(tái)的威力和靈活性。.NET 框架類庫、消息處理和數(shù)據(jù)訪問解決方案都可

14、從 Web 無縫訪問。ASP.NET 也與語言無關(guān),所以可以選擇最適合應(yīng)用程序的語言,或跨多種語言分割應(yīng)用程序。另外,公共語言運(yùn)行庫的交互性保證在遷移到 ASP.NET 時(shí)保留基于 COM 的開發(fā)中的現(xiàn)有投資。簡易性。ASP.NET 使執(zhí)行常見任務(wù)變得容易,從簡單的窗體提交和客戶端身份驗(yàn)證到部署和站點(diǎn)配置。例如,ASP.NET 頁框架使您可以生成將應(yīng)用程序邏輯與表示代碼清楚分開的用戶界面,和在類似 Visual Basic 的簡單窗體處理模型中處理事件。另外,公共語言運(yùn)行庫利用托管代碼服務(wù)(如自動(dòng)引用計(jì)數(shù)和垃圾回收)簡化了開發(fā)??晒芾硇浴SP.NET 采用基于文本的分層配置系統(tǒng),簡化了將設(shè)置

15、應(yīng)用于服務(wù)器環(huán)境和 Web 應(yīng)用程序。由于配置信息是以純文本形式存儲(chǔ)的,因此可以在沒有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此零本地管理哲學(xué)也擴(kuò)展到了 ASP.NET 框架應(yīng)用程序的部署。只需將必要的文件復(fù)制到服務(wù)器,即可將 ASP.NET 框架應(yīng)用程序部署到服務(wù)器。不需要重新啟動(dòng)服務(wù)器,即使是在部署或替換運(yùn)行的編譯代碼時(shí)??煽s放性和可用性。ASP.NET 在設(shè)計(jì)時(shí)考慮了可縮放性4,增加了專門用于在聚集環(huán)境和多處理器環(huán)境中提高性能的功能。另外,進(jìn)程受到 ASP.NET 運(yùn)行庫的密切監(jiān)視和管理,以便當(dāng)進(jìn)程行為不正常(泄漏、死鎖)時(shí),可就地創(chuàng)建新進(jìn)程,以幫助保持應(yīng)用程序始終可用于處理請(qǐng)求。自定義性和

16、擴(kuò)展性。ASP.NET 隨附了一個(gè)設(shè)計(jì)周到的結(jié)構(gòu),它使開發(fā)人員可以在適當(dāng)?shù)募?jí)別插入代碼。實(shí)際上,可以用自己編寫的自定義組件擴(kuò)展或替換 ASP.NET 運(yùn)行庫的任何子組件。實(shí)現(xiàn)自定義身份驗(yàn)證或狀態(tài)服務(wù)一直沒有變得更容易。安全性。借助內(nèi)置的 Windows 身份驗(yàn)證和基于每個(gè)應(yīng)用程序的配置,可以保證應(yīng)用程序是安全的。第二章 可行性分析硬件、軟件要求不高,目前市場上的一般計(jì)算機(jī)硬件資源均能滿足系統(tǒng)開發(fā)要求。其中運(yùn)用的主要軟件有Visual studio.NET 2010,photoshop,SQL server等,數(shù)據(jù)庫采用SQLserver2008。采用ASP.NET技術(shù),該技術(shù)功能強(qiáng)大,擴(kuò)展性強(qiáng)

17、,并結(jié)合vbscript,javascript以及sql等腳本語言,以上技術(shù)足以完成本系統(tǒng)的開發(fā)和設(shè)計(jì)。 在國外,特別是在美國,實(shí)施企業(yè)戰(zhàn)略不只是空談,它已經(jīng)被列入了許多大企業(yè)的日程表中。與國外的熱鬧場面相比,國內(nèi)了解企業(yè)概念的企業(yè)十分少,而計(jì)劃建立企業(yè)的企業(yè)就更加微乎其微。但是應(yīng)該看到,互聯(lián)網(wǎng)在國內(nèi)的發(fā)展速度相當(dāng)迅速,企業(yè)網(wǎng)站作為一種新的形象傳播途徑,同傳統(tǒng)媒介相比,對(duì)大眾更具有親和力與吸引力,可以幫助企業(yè)與消費(fèi)者建立更親密、更穩(wěn)固的聯(lián)系。企業(yè)網(wǎng)站有很多作用: 一、擁有企業(yè)自己的域名,建立企業(yè)自己的網(wǎng)站,樹立企業(yè)在科技信息時(shí)代的完美形象。作為第四媒體的互聯(lián)網(wǎng),其特點(diǎn)就是可以跨越時(shí)空,正常情況

18、下, 網(wǎng)站無時(shí)無刻 不在工作通過企業(yè)的網(wǎng)站,用戶可以跨越時(shí)空了解企業(yè),利用多媒體技術(shù),企業(yè)可以 向用戶展示產(chǎn)品、技術(shù)、經(jīng)營理念、企業(yè)文化、企業(yè)形象,樹立現(xiàn)代企業(yè)形象,增值 企業(yè)無形資產(chǎn)。 二、宣傳企業(yè),創(chuàng)造銷售機(jī)會(huì)據(jù)調(diào)查,有超過30%的人是通過上網(wǎng)查詢企業(yè)的 和地址的,這一比例和通過114查詢的比例相接近,可見企業(yè)網(wǎng)站已成為許多人首次接觸企業(yè)、了解相關(guān)信息的選擇。 三、加強(qiáng)客戶溝通宣傳企業(yè)產(chǎn)品企業(yè)可以通過網(wǎng)站建立與客戶溝通的便捷渠道,全面展示企業(yè)的所有產(chǎn)品。網(wǎng)絡(luò)科技足以令您的產(chǎn)品與品牌形象更加立體地呈現(xiàn)在用戶面前,就算企業(yè)僅僅把網(wǎng)站當(dāng)成電子宣傳冊(cè)來使用,也較傳統(tǒng)的宣傳模式更加的多姿多彩、更加地

19、易于發(fā)布與傳播、更加的經(jīng)濟(jì)與環(huán)保。 四、豐富營銷手段,擴(kuò)大產(chǎn)品銷售渠道企業(yè)網(wǎng)站可以滿足一部分客戶網(wǎng)上查詢與采購的需要,抓住網(wǎng)絡(luò)商機(jī)。企業(yè)通過網(wǎng)站可以開展電子營銷。首先,電子營銷作為傳統(tǒng)營銷的補(bǔ)充;其次, 電子營銷可以拓展新的空間,增加銷售渠道,接觸更大的消費(fèi)群體,獲得更多的新顧 客,擴(kuò)大市場;再次,電子營銷可以減少環(huán)節(jié),減少人員,節(jié)約費(fèi)用,降低成本,有利于提高營銷效率。 五、有利于了解顧客的意見,掌握顧客的需求在不干擾顧客正常工作和生活的條件下,企業(yè)通過網(wǎng)站上的調(diào)查表、留言薄、定 制服務(wù)以及E-MAIL可以傾聽顧客的意見,了解顧客的心聲,加強(qiáng)企業(yè)與顧客間的聯(lián)系 建立良好的顧客關(guān)系。 六、有利于

20、改善服務(wù),提高企業(yè)服務(wù)質(zhì)量利用網(wǎng)站,通過電子溝通方式,企業(yè)開展的在線服務(wù)是傳統(tǒng)的溝通方式(如,郵 件、 、 等)所無比擬的,在線服務(wù)能夠更加及時(shí)準(zhǔn)確地掌握用戶的需求,通過網(wǎng)站的交互式服務(wù)使得被動(dòng)提供和主動(dòng)獲得統(tǒng)一起來,從而實(shí)現(xiàn)售前、售中、售后的全過程和全方位的服務(wù)。 七、 互聯(lián)網(wǎng)的特點(diǎn)在于突破地域限制,一個(gè)網(wǎng)站能同時(shí)為您服務(wù)于世界各地的擁護(hù);同時(shí),網(wǎng)絡(luò)無休息,一年365天、一天24小時(shí),您的網(wǎng)站永遠(yuǎn)忠實(shí)地服務(wù)于您的所有客戶。動(dòng)態(tài)網(wǎng)站的開發(fā)技術(shù)及其實(shí)現(xiàn)ASP.NET 是建立在公共語言運(yùn)行庫上的編程框架,可用于在服務(wù)器上生成功能強(qiáng)大的 Web 應(yīng)用程序。與以前的 Web 開發(fā)模型相比,ASP.NE

21、T 提供了數(shù)個(gè)重要的優(yōu)點(diǎn)4:增強(qiáng)的性能3。ASP.NET 是在服務(wù)器上運(yùn)行的編譯好的公共語言運(yùn)行庫代碼。與被解釋的前輩不同,ASP.NET 可利用早期綁定、實(shí)時(shí)編譯、本機(jī)優(yōu)化和盒外緩存服務(wù)。這相當(dāng)于在編寫代碼行之前便顯著提高了性能。世界級(jí)的工具支持。ASP.NET 框架補(bǔ)充了 Visual Studio10.0 集成開發(fā)環(huán)境中的大量工具箱和設(shè)計(jì)器。WYSIWYG 編輯、拖放服務(wù)器控件和自動(dòng)部署只是這個(gè)強(qiáng)大的工具所提供功能中的少數(shù)幾種。威力和靈活性。由于 ASP.NET 基于公共語言運(yùn)行庫,因此 Web 應(yīng)用程序開發(fā)人員可以利用整個(gè)平臺(tái)的威力和靈活性。.NET 框架類庫、消息處理和數(shù)據(jù)訪問解決方

22、案都可從 Web 無縫訪問。ASP.NET 也與語言無關(guān),所以可以選擇最適合應(yīng)用程序的語言,或跨多種語言分割應(yīng)用程序。另外,公共語言運(yùn)行庫的交互性保證在遷移到 ASP.NET 時(shí)保留基于 COM 的開發(fā)中的現(xiàn)有投資。簡易性。ASP.NET 使執(zhí)行常見任務(wù)變得容易,從簡單的窗體提交和客戶端身份驗(yàn)證到部署和站點(diǎn)配置。例如,ASP.NET 頁框架使您可以生成將應(yīng)用程序邏輯與表示代碼清楚分開的用戶界面,和在類似 Visual Basic 的簡單窗體處理模型中處理事件。另外,公共語言運(yùn)行庫利用托管代碼服務(wù)(如自動(dòng)引用計(jì)數(shù)和垃圾回收)簡化了開發(fā)??晒芾硇?。ASP.NET 采用基于文本的分層配置系統(tǒng),簡化了

23、將設(shè)置應(yīng)用于服務(wù)器環(huán)境和 Web 應(yīng)用程序。由于配置信息是以純文本形式存儲(chǔ)的,因此可以在沒有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此“零本地管理”哲學(xué)也擴(kuò)展到了 ASP.NET 框架應(yīng)用程序的部署5。只需將必要的文件復(fù)制到服務(wù)器,即可將 ASP.NET 框架應(yīng)用程序部署到服務(wù)器。不需要重新啟動(dòng)服務(wù)器,即使是在部署或替換運(yùn)行的編譯代碼時(shí)??煽s放性和可用性。ASP.NET 在設(shè)計(jì)時(shí)考慮了可縮放性,增加了專門用于在聚集環(huán)境和多處理器環(huán)境中提高性能的功能。另外,進(jìn)程受到 ASP.NET 運(yùn)行庫的密切監(jiān)視和管理,以便當(dāng)進(jìn)程行為不正常(泄漏、死鎖)時(shí),可就地創(chuàng)建新進(jìn)程,以幫助保持應(yīng)用程序始終可用于處理請(qǐng)求。

24、自定義性和擴(kuò)展性。ASP.NET 隨附了一個(gè)設(shè)計(jì)周到的結(jié)構(gòu),它使開發(fā)人員可以在適當(dāng)?shù)募?jí)別“插入”代碼。實(shí)際上,可以用自己編寫的自定義組件擴(kuò)展或替換 ASP.NET 運(yùn)行庫的任何子組件。實(shí)現(xiàn)自定義身份驗(yàn)證或狀態(tài)服務(wù)一直沒有變得更容易。安全性。借助內(nèi)置的 Windows 身份驗(yàn)證和基于每個(gè)應(yīng)用程序的配置,可以保證應(yīng)用程序是安全的。網(wǎng)站建設(shè)的市場背景互聯(lián)網(wǎng)的興起及其在全球范圍內(nèi)的普遍應(yīng)用,加快了全球信息化的步伐,同時(shí),又使傳統(tǒng)企業(yè)面臨著新的挑戰(zhàn)和機(jī)遇。傳統(tǒng)企業(yè)廣泛實(shí)施電子商務(wù)轉(zhuǎn)型策略,是互聯(lián)網(wǎng)經(jīng)濟(jì)時(shí)代新型企業(yè)的發(fā)展方向。何將互聯(lián)網(wǎng)技術(shù)應(yīng)用于企業(yè)日常宣傳、運(yùn)作、管理中,如何在電子商務(wù)應(yīng)用領(lǐng)域開拓市場,

25、如何利用Internet給企業(yè)帶來商機(jī)、拓展企業(yè)的規(guī)模和效益,如何加強(qiáng)內(nèi)部管理等等則更是企業(yè)在互聯(lián)網(wǎng)經(jīng)濟(jì)浪潮中急需考慮的問題。 通過實(shí)施一系列的電子化建設(shè)計(jì)劃,該動(dòng)態(tài)網(wǎng)站將實(shí)現(xiàn):整合企業(yè)的業(yè)務(wù)應(yīng)用相關(guān)信息的動(dòng)態(tài)發(fā)布:企業(yè)信息、產(chǎn)品信息、招聘信息等建立一個(gè)強(qiáng)大的對(duì)外宣傳口徑方便管理員對(duì)整個(gè)網(wǎng)站監(jiān)控和維護(hù) 總體印象:立足于企業(yè)服務(wù)宗旨,延伸至高新行業(yè)領(lǐng)域,主題突出,內(nèi)容精干,形式簡潔版式布局:欄目集中1,分欄目檢索明確,導(dǎo)航標(biāo)志清晰色彩運(yùn)用:色調(diào)總體呈暢快、簡潔、專業(yè)的特征2:(根據(jù)企業(yè)實(shí)際需要決定)圖片運(yùn)用:配合文字及色塊,以生動(dòng)的形象圖片表達(dá)知名專業(yè)公司的實(shí)力和創(chuàng)造力動(dòng)態(tài)網(wǎng)站的總體模塊設(shè)計(jì)由于

26、中小型企業(yè)網(wǎng)站的目標(biāo)重點(diǎn)在于展示企業(yè)的信息和銷售信息。本章重點(diǎn)介紹前臺(tái)功能模塊總體設(shè)計(jì)、后臺(tái)功能模塊總體設(shè)計(jì)和數(shù)據(jù)庫模塊的總體設(shè)計(jì)。前臺(tái)功能模塊總體設(shè)計(jì)前臺(tái)功能模塊主要包括:網(wǎng)站首頁、關(guān)于我們、新聞資訊、產(chǎn)品介紹、咖啡學(xué)院、店鋪展示、留言中心、聯(lián)系我們。總體設(shè)計(jì)展示如圖4.1。圖4.1 前臺(tái)功能模塊總體設(shè)計(jì)后臺(tái)功能模塊總體設(shè)計(jì) 后臺(tái)功能模塊包括:用戶管理、管理員管理、新聞管理的文章管理和類別管理、留言信息管理的添加、修改、查看等總體設(shè)計(jì)展示如圖4.2。數(shù)據(jù)庫模塊總體設(shè)計(jì)數(shù)據(jù)庫是模塊建設(shè)中的關(guān)鍵部分,是企業(yè)網(wǎng)站設(shè)計(jì)的核心,大量頁面和服務(wù)需要向數(shù)據(jù)庫表寫入信息,或更改、提取信息,用戶信息等保存到數(shù)

27、據(jù)庫管理系統(tǒng)中。數(shù)據(jù)庫功能實(shí)現(xiàn)的好壞,直接決定了系統(tǒng)功能的實(shí)現(xiàn)程度,以及系統(tǒng)實(shí)際運(yùn)行的安全性。在系統(tǒng)的開發(fā)及運(yùn)行中,數(shù)據(jù)庫系統(tǒng)占有重要的地位,因?yàn)楸鞠到y(tǒng)擁有并使用大量的數(shù)據(jù)信息,所以系統(tǒng)的運(yùn)行需要功能強(qiáng)大和完善的數(shù)據(jù)庫的支持。合理的數(shù)據(jù)庫設(shè)計(jì)在系統(tǒng)開發(fā)中是至關(guān)重要的,通過建立完整的數(shù)據(jù)表、表與表之間完善的聯(lián)系,可以存儲(chǔ)完備的信息數(shù)據(jù)等,并方便對(duì)數(shù)據(jù)庫的訪問和增、改、查等操作,繼而支持并簡化系統(tǒng)的整個(gè)使用流程、信息瀏覽功能等,方便了用戶的使用。數(shù)據(jù)庫7模塊的總體設(shè)計(jì)展示如圖4.3。.1數(shù)據(jù)庫功能模塊總體設(shè)計(jì)本系統(tǒng)采用Microsoft公司的大型數(shù)據(jù)庫系統(tǒng)SQL Server 2005。依據(jù)項(xiàng)目的

28、處理需求,對(duì)應(yīng)數(shù)據(jù)表的設(shè)計(jì)及功能如下: 用戶表: 存放用戶的基本資料 新聞?lì)悇e表: 存放企業(yè)網(wǎng)站的新聞的類別 新聞信息數(shù)據(jù)表: 存放網(wǎng)站內(nèi)的新聞資訊 留言信息表: 存放用戶的留言評(píng)論信息 管理員表: 存放管理員的基本信息表-1 用戶表(users)字段名說明類型長度可否為空是否為主鍵Id自動(dòng)編號(hào)int4否是LoginName用戶名nvarchar50否LoginPwd密碼nvarchar50否RealName真實(shí)姓名nvarchar50否Address nvarchar100是Phone聯(lián)系 nvarchar50否Email電子郵箱nvarchar50是Role角色nvarchar1否表4.3

29、-2 新聞?lì)悇e表(NewsCategories)字段名說明類型長度可否為空是否為主鍵Id自動(dòng)編號(hào)int4否是Name類別名稱nvarchar50否表4.3-3 新聞信息數(shù)據(jù)表(News)字段名說明類型長度可否為空是否為主鍵Id自動(dòng)編號(hào)int4否是Title標(biāo)題nvarchar200否Author作者nvarchar50是PubDate發(fā)布時(shí)間datetime50是Contents內(nèi)容ntext10000是Clicks點(diǎn)擊次數(shù)int10是NewsCategoryId新聞?lì)悇eint4否表4.3-4 留言信息表(LY_Info)字段名說明類型長度可否為空是否為主鍵LyId自動(dòng)編號(hào)int4否是User

30、Name用戶名nvarchar50否LyTime留言時(shí)間datetime50否LyContent留言內(nèi)容ntext1000否HF回復(fù)名nvarchar50否HFtime回復(fù)時(shí)間datetime50否表4.3-5 管理員信息表(Admin_info)字段名說明類型長度可否為空是否為主鍵AdminId自動(dòng)編號(hào)int4否是AdminName管理員名nvarchar50否AdminPwd密碼nvarchar50否AdminBZ級(jí)別nvarchar50否三層架構(gòu)代碼實(shí)現(xiàn)及頁面展示本網(wǎng)站的后臺(tái)實(shí)現(xiàn)應(yīng)用了三層架構(gòu):數(shù)據(jù)層、業(yè)務(wù)層(BLL和DAL)以及表現(xiàn)層。下面我們分別介紹。模型層 該網(wǎng)站使用的數(shù)據(jù)庫是sq

31、l server20087,在模型層將每個(gè)數(shù)據(jù)表封裝起來。下面以新聞數(shù)據(jù)表為例,進(jìn)行代碼分析。在Visual Studio2010中可以看到模型層的展示,如圖5.1。News.cs頁面的源代碼:/命名空間using System;using System.Collections.Generic;using System.Linq;using System.Text;模型層模型層圖5.1模型層的展示namespace coffeeModel Serializable() public class News /對(duì)應(yīng)數(shù)據(jù)庫定義私有變量 private int id; public int Id /對(duì)

32、變量進(jìn)行封裝 get return id; set id = value; private string title = string.Empty; public string Title get return title; set title = value; private string author = string.Empty; public string Author get return author; set author = value; private DateTime pubDate; public DateTime PubDate get return pubDate;

33、set pubDate = value; private string contents = string.Empty; public string Contents get return contents; set contents = value; private int clicks; public int Clicks get return clicks; set clicks = value; private int newsCategoryId; public int NewsCategoryId get return newsCategoryId; set newsCategor

34、yId = value; private NewsCategory newsCategory; public NewsCategory NewsCategory get return newsCategory; set newsCategory = value; public News() /定義構(gòu)造方法 5.2 數(shù)據(jù)訪問層數(shù)據(jù)訪問層用于鏈接數(shù)據(jù)庫和各種方法的書寫。在Visual Studio10.0中可以看到數(shù)據(jù)訪問層和業(yè)務(wù)邏輯層的展示,如圖5.2。數(shù)據(jù)訪問層(DAL)圖5.2數(shù)據(jù)訪問層的展示下面以新聞數(shù)據(jù)表為例,進(jìn)行代碼分析。NewsService.cs頁面的源代碼:/命名空間using

35、System;using System.Collections.Generic;using System.Linq;using System.Text;using coffeeModel;using System.Data.SqlClient;using System.Data;namespace coffeeModel public class NewsService private static string connectionString = Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|website.mdf;Inte

36、grated Security=True;User Instance=True; / / 刪除新聞 / / 新聞對(duì)象 public static void DeleteNews(News news) using (SqlConnection cn = new SqlConnection(connectionString) cn.Open(); SqlCommand cm = new SqlCommand(); cm.Connection = cn; string sql = delete from News where Id=Id; cm.CommandText = sql; cm.Param

37、eters.AddWithValue(Id, news.Id); cm.ExecuteNonQuery();/ / / 根據(jù)SQL語句返回部分字段的新聞列表 / / SQL語句 / 新聞對(duì)象集合 private static IList GetNewsBySql(string sql) using (SqlConnection cn = new SqlConnection(connectionString) cn.Open(); SqlCommand cm = new SqlCommand();/建立sql命令對(duì)象實(shí)例 cm.Connection = cn; cm.CommandText =

38、sql; SqlDataReader dr = cm.ExecuteReader(); List list = new List(); while (dr.Read() News news = new News(); for (int i = 0; i dr.FieldCount; i+) string fildName = dr.GetName(i); if (fildName = Id) news.Id = (int)drId; else if (fildName = Title) news.Title = (string)drTitle; else if (fildName = Auth

39、or) news.Author = (string)drAuthor; else if (fildName = PubDate) news.PubDate = (DateTime)drPubDate; else if (fildName = Contents) news.Contents = (string)drContents; else if (fildName = Clicks) news.Clicks = (int)drClicks; else if (fildName = NewsCategoryId) news.NewsCategoryId = (int)drNewsCategor

40、yId; news.NewsCategory = NewsCategoryService.GetNewsCategoryById(int)drNewsCategoryId); list.Add(news); dr.Close(); return list; / / 查詢最近的10條新聞 / / public static IList GetNewsTop10() string sql = select top 10 Id,Title from News order by Id DESC; return GetNewsBySql(sql); / / 根據(jù)查詢條件,排序字段,排序方向返回包含部分字

41、段(Id,Title,Author,PubDate,Clicks,NewsCategoryId)的新聞列表 / / 查詢條件 / 排序字段 / 排序方向 / 新聞對(duì)象集合 public static IList GetNewsPartFieldsByConditions(string conditions, string sortField, string direction) string sql = select Id,Title,Author,PubDate,Clicks,NewsCategoryId from News; if (conditions.Trim().Length 0)

42、sql += where + conditions; if (sortField.Trim().Length 0) sql += order by + sortField; if (direction.Trim().Length 0) sql += + direction; return GetNewsBySql(sql); / / 根據(jù)ID查詢新聞 / / 新聞ID / 新聞對(duì)象 public static News GetNewsById(int id) using (SqlConnection cn = new SqlConnection(connectionString) cn.Ope

43、n(); SqlCommand cm = new SqlCommand(); cm.Connection = cn; string sql = SELECT * FROM News WHERE Id =Id; cm.CommandText = sql; cm.Parameters.AddWithValue(Id, id); SqlDataReader dr = cm.ExecuteReader(); if (dr.Read() News news = new News(); news.Id = (int)drId; news.Title = (string)drTitle; news.Auth

44、or = (string)drAuthor; news.PubDate = (DateTime)drPubDate; news.Contents = (string)drContents; news.Clicks = (int)drClicks; news.NewsCategoryId = (int)drNewsCategoryId; news.NewsCategory = NewsCategoryService.GetNewsCategoryById(int)drNewsCategoryId); dr.Close(); return news; else dr.Close(); return

45、 null; / / 添加新聞 / / 新聞對(duì)象 public static void AddNews(News news) using (SqlConnection cn = new SqlConnection(connectionString) cn.Open(); /string sql = insert News Values( + news.Title + , + news.Author + , + news.PubDate + , + news.Contents + , + news.Clicks + , + news.NewsCategoryId + ); /SqlCommand

46、 cmd = new SqlCommand(sql, cn); /cmd.ExecuteNonQuery(); SqlCommand cm = new SqlCommand(); cm.Connection = cn; string sql = INSERT News(Title,Author,PubDate,Contents,Clicks,NewsCategoryId) + VALUES(Title,Author,PubDate,Contents,Clicks,NewsCategoryId); cm.CommandText = sql; cm.Parameters.AddWithValue(

47、Title, news.Title); cm.Parameters.AddWithValue(Author, news.Author); cm.Parameters.AddWithValue(PubDate, System.DateTime.Now); cm.Parameters.AddWithValue(Contents, news.Contents); cm.Parameters.AddWithValue(Clicks, news.Clicks); cm.Parameters.AddWithValue(NewsCategoryId, news.NewsCategoryId); cm.Exe

48、cuteNonQuery(); / / 修改新聞 / / 新聞對(duì)象 public static void ModifyNews(News news) using (SqlConnection cn = new SqlConnection(connectionString) cn.Open(); SqlCommand cm = new SqlCommand(); cm.Connection = cn; string sql = UPDATE News + SET + Title=Title, + Author=Author, + PubDate=PubDate, + Contents=Conte

49、nts, + Clicks=Clicks, + NewsCategoryId=NewsCategoryId + WHERE Id=Id; cm.CommandText = sql; cm.Parameters.AddWithValue(Id, news.Id); cm.Parameters.AddWithValue(Title, news.Title); cm.Parameters.AddWithValue(Author, news.Author); cm.Parameters.AddWithValue(PubDate, news.PubDate); cm.Parameters.AddWith

50、Value(Contents, news.Contents); cm.Parameters.AddWithValue(Clicks, news.Clicks); cm.Parameters.AddWithValue(NewsCategoryId, news.NewsCategoryId); cm.ExecuteNonQuery(); / / 根據(jù)查詢條件、排序字段、排序方向返回所有字段的新聞列表 / / 查詢條件 / 排序字段 / 排序方向 / 新聞對(duì)象集合 public static IList GetNewsAllFieldsByConditions(string conditions,

51、string sortField, string direction) string sql = SELECT Id,Title,Author,PubDate,Contents,Clicks,NewsCategoryId FROM News; if (conditions.Trim().Length 0) sql += WHERE + conditions; if (sortField.Trim().Length 0) sql += ORDER BY + sortField; if (direction.Trim().Length 0) sql += + direction; return G

52、etNewsBySql(sql); 5.3業(yè)務(wù)邏輯層業(yè)務(wù)層用于訪問數(shù)據(jù)層,從數(shù)據(jù)層取數(shù)據(jù)、修改數(shù)據(jù)以及刪除數(shù)據(jù),并將結(jié)果返回給表現(xiàn)層。如圖5.3。業(yè)務(wù)邏輯層(BLL)下面以新聞數(shù)據(jù)表為例,進(jìn)行代碼分析。NewsManager.cs頁面的源代碼:/命名空間using System;using System.Collections.Generic;using System.Linq;using System.Text;using coffeeModel;using coffeeDal;using System.Data;using System.Data.SqlClient;using Syste

53、m.Data.Sql;namespace coffeeBll public class NewsManager public static void DeleteNews(News news) NewsService.DeleteNews(news); public static IList GetNewsPartFiledsByConditions(string conditions, string sortField, string direction) return NewsService.GetNewsPartFieldsByConditions(conditions, sortFie

54、ld, direction); public static News GetNewsById(int id) return NewsService.GetNewsById(id); public static IList GetNewsTop10() return NewsService.GetNewsTop10(); public static void AddNews(News news) if (news.Author = null) news.Author = ; news.PubDate = DateTime.Now; news.Clicks = 0; NewsService.Add

55、News(news); public static void ModifyNews(News news) if (news.Author = null) news.Author = ; if (news.PubDate = DateTime.MinValue) news.PubDate = DateTime.Now; NewsService.ModifyNews(news); public static IList GetNewsAllFieldsByConditions(string conditions, string sortField, string direction) return

56、 NewsService.GetNewsAllFieldsByConditions(conditions, sortField, direction); 5.4 表示層 表現(xiàn)層用于用戶接口的展示,以及用業(yè)務(wù)層的類和對(duì)象來“驅(qū)動(dòng)”這些接口6。在中,該層包括aspx頁面、用戶控制、服務(wù)器控制以及某些與安全相關(guān)的類和對(duì)象。在Visual Studio2010中可以看到表示層的展示,如圖5.4。表示層下面以多個(gè)頁面為例,進(jìn)行代碼分析。 5.首頁展示頁面首頁是訪問者首先看到的頁面,它的制作直接影響企業(yè)的形象。這個(gè)金米蘭咖啡公司網(wǎng)站首頁采用div進(jìn)行定位,前臺(tái)后臺(tái)相結(jié)合。展示效果如圖5.所示。 圖5.首頁

57、設(shè)計(jì) 1. Fancy Coffee 花式咖啡 法國人喝咖啡講究的不是咖啡本身的品質(zhì)和味道,而注重飲用咖啡的環(huán)境和情調(diào),表現(xiàn)出來的是優(yōu)雅的. 當(dāng)你端起一杯咖啡,深深吸入咖啡香氣的那一刻,所有這一切都會(huì)讓你聯(lián)想到一種植物、一個(gè)精確的地. 新聞資訊頁面展示效果如下圖5.所示。圖5.新聞資訊頁面 新聞資訊 排序方式: | a href=news_Detail.aspx?Id= 發(fā)表日期: 瀏覽次數(shù): using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;

58、using System.Web.UI.WebControls;using coffeeBll; protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) /首次加載,賦初值 if (Request.QueryStringNewsCategoryId != null) int id; try id = Convert.ToInt32(Request.QueryStringNewsCategoryId); ViewStateConditions = NewsCategoryId= + id; catch ViewS

59、tateConditions = ; else ViewStateConditions = ; ViewStateSortField = Id; ViewStateDirection = DESC; ViewStateTitleClick = 0; ViewStatePubDateClick = 0; ViewStatePageIndex = 0; Databind(); private void Databind() /設(shè)置PagedDataSource對(duì)象實(shí)例 PagedDataSource pdsNews = new PagedDataSource(); /設(shè)置數(shù)據(jù)源 pdsNews.D

60、ataSource = NewsManager.GetNewsAllFieldsByConditions(ViewStateConditions.ToString(), ViewStateSortField.ToString(), ViewStateDirection.ToString(); /允許分頁 pdsNews.AllowPaging = true; /設(shè)置每頁顯示條件記錄 pdsNews.PageSize = 3; /設(shè)置當(dāng)前索引值 pdsNews.CurrentPageIndex = PageIndex; /設(shè)置末頁索引值 ViewStateLastPageIndex = pdsN

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論