版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 本科畢業(yè)設(shè)計(論文)本科畢業(yè)設(shè)計(論文).NET技術(shù)培訓(xùn)展示系統(tǒng)設(shè)計與實現(xiàn)學(xué)院名稱: 計算機工程學(xué)院 專 業(yè): 信息管理與信息系統(tǒng) 班 級: 姓 名: 指導(dǎo)教師姓名: 指導(dǎo)教師職稱: 講 師 2011年05月.NET技術(shù)培訓(xùn)展示系統(tǒng)設(shè)計與實現(xiàn) 摘 要:由于課時限制和學(xué)生學(xué)習能力等因素,學(xué)生難以在有限課時范圍內(nèi)系統(tǒng)地學(xué)到.NET的完整內(nèi)容。因此,本課題制作一個基于Visual Studio 2008的網(wǎng)站開發(fā)培訓(xùn)教程,該網(wǎng)站提供了大量的.NET技術(shù)方面的知識資源,網(wǎng)站的BBS功能為學(xué)習者提供了一個技術(shù)討論與交流的平臺。本網(wǎng)站的主要目標是為學(xué)習者提供課后下載學(xué)習,提高學(xué)生網(wǎng)頁設(shè)計與開發(fā)課程的學(xué)習
2、能力。本文內(nèi)容主要包括:.NET技術(shù)培訓(xùn)系統(tǒng)設(shè)計與實現(xiàn)的需求分析、系統(tǒng)分析、系統(tǒng)總體設(shè)計、系統(tǒng)詳細設(shè)計、編程和系統(tǒng)的實現(xiàn);系統(tǒng)功能模塊包括:.NET技術(shù)知識點、培訓(xùn)講師基本信息、.NET技術(shù)知識點相關(guān)查詢(按知識點、技巧等)、培訓(xùn)系統(tǒng)報名、BBS等功能。關(guān)鍵詞:.NET框架,培訓(xùn)系統(tǒng),BBS.Net Technology Training System Design and RealizationAbstract: Because of lesson restrictions and the students learning ability, students hard to learn t
3、he complete contents of the .net systematically. Therefore, the subject constructs a web development training course, which based on visual studio 2008.This website provides massive knowledge resources of .net technology. BBS functions of the website offers a platform of technical discussion and exc
4、hange to learners. This websites main goal is to provide after-school download for learners to improve students ability of web design and development. The article content mainly includes: the requirement analysis of technology training system design and implementation, system analysis, the whole sys
5、tem design, system detailed design, programming and implementation of the system; System function module includes: the knowledge of .net technology, training instructors basic information, .net technology knowledge related inquires according to the knowledge, skills, etc (), training system applicat
6、ion, BBS Function etc. Keywords: .Net Framework, Training System, BBS目錄 TOC o 1-3 u 引言 PAGEREF _Toc291054550 h 1第1章 概 述 PAGEREF _Toc291054551 h 2系統(tǒng)開發(fā)背景和意義2系統(tǒng)開發(fā)所具有的特征2相關(guān)技術(shù)介紹與軟件選擇31.3.1 .NET平臺31.3.2 簡介41.3.3 Visual Studio 200851.3.4 SQL SERVER 20056第2章.NET培訓(xùn)系統(tǒng)網(wǎng)站案例設(shè)計72.1 網(wǎng)站系統(tǒng)需求分析7性能需求分析72.1.2 功能分析72.1.
7、3 運行環(huán)境分析72.2 系統(tǒng)概要設(shè)計82.2.1 開發(fā)模式分析82.2.2 功能設(shè)計描述82.2.3 網(wǎng)站流程分析9第3章 數(shù)據(jù)庫設(shè)計103.1 數(shù)據(jù)庫設(shè)計10 3.1.1 數(shù)據(jù)庫設(shè)計103.1.2 數(shù)據(jù)庫E-R圖103.1.3 數(shù)據(jù)庫表設(shè)計11第4章 系統(tǒng)功能實現(xiàn)144.1 網(wǎng)站結(jié)構(gòu)體系144.2 通用類庫設(shè)計144.3 網(wǎng)站模塊實現(xiàn)184.3.1 首頁顯示模塊184.3.2 用戶報名模塊214.3.3 用戶注冊模塊224.3.4 用戶登錄模塊234.3.5 權(quán)限管理模塊254.3.6 資源添加模塊274.3.7 資源管理模塊32 第5章 總結(jié)35參考文獻36致謝37引言隨著Interne
8、t的普及,網(wǎng)站已經(jīng)成為人們信息獲取與發(fā)布、信息交流與溝通、商務(wù)往來最為重要的途徑。網(wǎng)站開發(fā)技術(shù)已成為大學(xué)計算機基礎(chǔ)教育改革的重要內(nèi)容,網(wǎng)站設(shè)計與制作的學(xué)習既是享用信息技術(shù)成果的過程,又是應(yīng)用創(chuàng)新的實踐。網(wǎng)站開發(fā)制作已成為現(xiàn)代大學(xué)生應(yīng)掌握的重要技能,特別是軟件開發(fā)專業(yè)的學(xué)生。此專業(yè)學(xué)生的其中一項培養(yǎng)目標是熟練掌握計算機網(wǎng)絡(luò)通信知識,具備較強網(wǎng)站設(shè)計與開發(fā)能力。為此,本專業(yè)開設(shè)了網(wǎng)絡(luò)設(shè)計的相關(guān)的課程。但是,在實際教學(xué)過程中,由于課時等因素的影響,學(xué)生無法全面系統(tǒng)地掌握知識。而且,大學(xué)教育只是一個引導(dǎo)性的教育。知識的融會貫通還需要學(xué)生課后的自學(xué)。為了幫助軟件開發(fā)專業(yè)的學(xué)生更好地學(xué)習網(wǎng)站或者軟件設(shè)計與
9、制作,開發(fā)、設(shè)計了本系統(tǒng)。該系統(tǒng)可以使學(xué)習者不受時空的限制,自主地下載資源學(xué)習,其真實的教學(xué)環(huán)境、生動的講解,給學(xué)習者帶來了人性化的教學(xué)方式。本網(wǎng)站提供了.NET相關(guān)的一些技術(shù)語言和相應(yīng)知識點(如等等)。還包括.NET技術(shù)知識點、培訓(xùn)講師等基本信息,.NET技術(shù)知識點相關(guān)查詢(按知識點、技巧等),培訓(xùn)系統(tǒng)報名、BBS等功能。第1章 概 述 系統(tǒng)開發(fā)背景和意義隨著網(wǎng)絡(luò)的快速發(fā)展,各種學(xué)習資源越來越受到人們的重視,特別是網(wǎng)站開發(fā)教程。它以其豐富的教學(xué)資源,簡單精練的講解,人性化的教學(xué)方式不斷受到學(xué)習者的青睞。通過PPT視頻教程的講解演示,學(xué)習者不僅可以學(xué)到書本上的知識,一些切實可用的技巧,而且學(xué)習
10、者也不用受時間、地點等因素的影響,自由控制學(xué)習進度。網(wǎng)絡(luò)的快速發(fā)展,使得越來越多的人參與到網(wǎng)頁設(shè)計與制作的行列之中。社會對網(wǎng)頁制作人員的需求越來越大,其中以.NET Web開發(fā)最為顯著。Web服務(wù)從由簡單網(wǎng)頁構(gòu)成的靜態(tài)服務(wù)網(wǎng)站,發(fā)展到可以交互執(zhí)行一些復(fù)雜步驟的動態(tài)服務(wù)網(wǎng)站,這些服務(wù)可能需要一個Web服務(wù)調(diào)用其他的Web服務(wù),并且像一個傳統(tǒng)軟件程序那樣執(zhí)行命令。這就需要和其他服務(wù)整合,需要多個服務(wù)能夠一起無縫地協(xié)同工作,需要能夠創(chuàng)建出與設(shè)備無關(guān)的應(yīng)用程序,需要能夠容易地協(xié)調(diào)網(wǎng)絡(luò)上的各個服務(wù)的操作步驟,容易地創(chuàng)建新的用戶化的服務(wù)。 本系統(tǒng)的目的是設(shè)計一個基于B/S模式的培訓(xùn)課程資源網(wǎng)站,主要內(nèi)容和
11、模塊包括:.NET技術(shù)知識點、培訓(xùn)講師等基本信息,.NET技術(shù)知識點相關(guān)查詢(按知識點、技巧等),培訓(xùn)系統(tǒng)報名、BBS等功能。本課題要求學(xué)生掌握的主要相關(guān)知識和技術(shù)有:.NET相關(guān)技術(shù),C#編程語言,JavaScript技術(shù),數(shù)據(jù)庫的原理和技術(shù),網(wǎng)站開發(fā)技術(shù),動態(tài)網(wǎng)頁制作技術(shù),軟件工程的方法等。 系統(tǒng)開發(fā)所具有的特征根據(jù)所完成的主要任務(wù)分析以及課程網(wǎng)站用戶的特殊性,一個課程網(wǎng)站一般要設(shè)計出學(xué)習、交流等功能。同時這些功能又根據(jù)用戶的不同而給予不同的權(quán)限,這些權(quán)限決定用戶所能完成的主要功能,普通用戶,主要通過課程網(wǎng)站來學(xué)習,所以所具有的權(quán)利應(yīng)該是學(xué)習、下載資源等。管理員作為一個網(wǎng)站的箮理者,能夠擁
12、有的權(quán)限很大,因為做了課程網(wǎng)站的管理員,要有維護網(wǎng)站正常運行的能力,更新數(shù)據(jù)庫的能力,更新通告的功能,要有完成網(wǎng)站網(wǎng)頁的更新的能力等。因此,課程網(wǎng)站應(yīng)該擁有以下幾個功能:(1)學(xué)習功能,使用者利用網(wǎng)絡(luò)來學(xué)習與傳播知識,其應(yīng)用的主體學(xué)習者多數(shù)為學(xué)生。學(xué)生可以利用課程網(wǎng)站來獲取自己想要的知識,老師作為管理員可以利用精品課程網(wǎng)站向?qū)W生傳播自己的知識;同時又因為老師與學(xué)生之間存在著巨大的差異,這種差異體現(xiàn)為權(quán)限的不同,因此課程網(wǎng)站應(yīng)該分別設(shè)計出管理員模塊和普通會員模塊。(2)交流功能,與現(xiàn)實中的教育一樣,會員有可能會遇到各種自己無法解決的問題,就需要能夠向別人求助,設(shè)計一個論壇就能夠很好的解決這個問題
13、,它能方便用戶之間的交流,提高學(xué)習的效率。用戶可以登錄論壇進入相應(yīng)的模塊進行發(fā)帖,回復(fù)帖子等進行技術(shù)方面的交流。(3)系統(tǒng)管理,課程網(wǎng)站的內(nèi)容是不斷更新的,這就需要網(wǎng)站服務(wù)器管理員適時的更新,這要求網(wǎng)絡(luò)管理員具有良好的網(wǎng)站維護知識,良好的溝通能力,能把用戶的要求及時的反應(yīng)到網(wǎng)站上去。同時網(wǎng)站的注冊用戶會不斷增加,這些都得需要管理員進行有效的管理。由于網(wǎng)站是開發(fā)的平臺,所以注冊的用戶都可以自己的發(fā)表帖子,管理員則需要及時的管理用戶發(fā)貼的內(nèi)容,防止出現(xiàn)不健康的帖子信息。 相關(guān)技術(shù)介紹與軟件選擇該網(wǎng)站開發(fā)在.NET平臺下,采用了功能強大的Microsoft Visual Studio 2008及SQ
14、L Server2005數(shù)據(jù)庫管理系統(tǒng)為開發(fā)環(huán)境,借助應(yīng)用技術(shù)手段,實現(xiàn)了課程信息的快速發(fā)布和資源共享,為用戶在Internet環(huán)境下實現(xiàn)管理員對用戶的詳細管理,其中包括對注冊用戶的添加、修改和刪除功能,使得系統(tǒng)管理安全可靠。.NET平臺.NET這個名稱涵蓋了微軟的主要開發(fā)平臺。這個主題十分廣泛,包含了許多規(guī)范,如組件格式、編程語言、標準類庫和工具等。它主要包括一下內(nèi)容: .NET Framework(架構(gòu)),包括:Common Language Runtime(CLR)(通用語言運行環(huán)境) ,這是用于運行和加載應(yīng)用程序的軟件組件;新的類庫,分級組織了開發(fā)者可以在他們的應(yīng)用程序中用來顯示圖形用
15、戶界面、訪問數(shù)據(jù)庫和文件以及在 Web 上通信的代碼集。 .NET framework 的組成如下圖所示: 圖 1.1 .NET framework 結(jié)構(gòu)圖 .NET 開發(fā)者工具,包括:Visual Studio .NET Integrated Development Environment (IDE)(Visual Studio .NET 集成開發(fā)環(huán)境),用來開發(fā)和測試應(yīng)用程序;.NET 編程語言(例如 Visual Basic .NET 和新的 Visual C#) ,用來創(chuàng)建運行在 CLR 下并且使用類庫的應(yīng)用程序。 ASP .NET,一個取代以前的 Active Server Page
16、s (ASP)的特殊類庫,用來創(chuàng)建動態(tài)的 Web 內(nèi)容和 Web 服務(wù)器應(yīng)用程序,這些都將采用諸如 HTML、XML和 Simple Object Access Protocol(SOAP)(簡單對象訪問協(xié)議)等 Internet協(xié)議和數(shù)據(jù)格式。.NET首先是一個環(huán)境。這是一個理想化的未來互聯(lián)網(wǎng)環(huán)境?;ヂ?lián)網(wǎng)應(yīng)該以一個整體服務(wù)的形式展現(xiàn)在最終用戶面前。.NET謀求的是一種理想的互聯(lián)網(wǎng)環(huán)境。而要搭建這樣一種互聯(lián)網(wǎng)環(huán)境,首先需要解決的問題是針對現(xiàn)有因特網(wǎng)的缺陷,來設(shè)計和創(chuàng)造一種下一代Internet結(jié)構(gòu)。這種結(jié)構(gòu)不是物理網(wǎng)絡(luò)層次上的拓撲結(jié)構(gòu),而是面向軟件和應(yīng)用層次的種有別于瀏覽器只能靜態(tài)瀏覽的可編程
17、Internet軟件結(jié)構(gòu)。因此NET把自己定位為可以作為平臺支持下一代Internet的可編程結(jié)構(gòu)。 .NET的最終目的就是讓用戶在任何地方、任何時間,以及利用任何設(shè)備都能訪問他們所需要的信息、文件和程序。有如下的優(yōu)越性: 是運行在服務(wù)器端的通用語言運行環(huán)境, ASPNET會通過即時編譯來提高性能。除此之外,ASPNET使用了提前綁定、JIT編譯(Just-In-Time Compilers,ASPNET稱之為JITers,而Java則稱之為JIT)、本地優(yōu)化、緩存(Cache)等一系列技術(shù)來達到提高運行效能的目的。更強大的開發(fā)工具支持。雖然和ASP一樣,只要服務(wù)器操作和服務(wù)器軟件(ASPNE
18、T要求至少Windows 2000 Server和IIS 5.0)支持,就可以運行腳本,而且開發(fā)的頁面或者應(yīng)用程序也不需要專門的開發(fā)工具。 更優(yōu)秀的適應(yīng)性。是基于通用語言的運行環(huán)境(Common Language Runtime)的,所有一般語言所具有的類庫、消息和數(shù)據(jù)連接都能方便的連接到網(wǎng)絡(luò)上。ASPNET同時也具有語言無關(guān)性,所以用戶可以選擇自己所需要的開發(fā)語言(如C#, VB, JavaScript等)。更強大的可恢復(fù)性和有效性。在設(shè)計上是遵循了可擴展性的思想,它對多進程環(huán)境下的應(yīng)用程序進行優(yōu)化,進程可以動態(tài)的被ASPNET調(diào)用和跟蹤。更優(yōu)越的可定制性和擴展性。提供了可定制和重用的體系結(jié)
19、構(gòu),用戶可以在一定的層次上修改提供的程序段,甚至可以重新編寫ASPNET的控件,從而實現(xiàn)根據(jù)不同需要定制的目的。Visual Studio 2008Visual Studio 是微軟公司推出的開發(fā)環(huán)境,Visual Studio 可以用來創(chuàng)建 Windows 平臺下的 Windows 應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,也可以用來創(chuàng)建網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和 Office 插件。是目前最流行的 Windows 平臺應(yīng)用程序開發(fā)環(huán)境。目前已經(jīng)開發(fā)到 10.0 版本,也就是 Visual Studio 2010。Visual Studio 2008 提供了高級開發(fā)工具、調(diào)試功能、數(shù)據(jù)庫功能和創(chuàng)新功能,幫助
20、在各種平臺上快速創(chuàng)建當前最先進的應(yīng)用程序。Visual Studio 2008 包括各種增強功能,例如可視化設(shè)計器(使用 .NET Framework 3.5 加速開發(fā))、對 Web 開發(fā)工具的大量改進,以及能夠加速開發(fā)和處理所有類型數(shù)據(jù)的語言增強功能。Visual Studio 2008 為開發(fā)人員提供了所有相關(guān)的工具和框架支持,幫助創(chuàng)建引人注目的、令人印象深刻并支持 AJAX 的 Web 應(yīng)用程序。開發(fā)人員能夠利用這些豐富的客戶端和服務(wù)器端框架輕松構(gòu)建以客戶為中心的 Web 應(yīng)用程序,這些應(yīng)用程序可以集成任何后端數(shù)據(jù)提供程序、在任何當前瀏覽器內(nèi)運行并完全訪問 ASP NET 應(yīng)用程序服務(wù)和
21、 Microsoft 平臺。SQL SERVER 2005SQL Server是一個全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能 (BI) 工具提供了企業(yè)級的數(shù)據(jù)管理。SQL Server數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲功能。 SQL Server數(shù)據(jù)引擎是企業(yè)數(shù)據(jù)管理解決方案的核心。 SQL Server數(shù)據(jù)平臺為各種規(guī)模的組織提供了以下好處: 1.充分利用數(shù)據(jù)資產(chǎn)。 除了為業(yè)務(wù)線和分析應(yīng)用程序提供一個安全可靠的數(shù)據(jù)庫之外,SQL Server也使用戶能夠通過嵌入的功能(如報表、分析和數(shù)據(jù)挖掘等)從他們的數(shù)據(jù)中得到更多的價值。您可以充分利用其強大功能性和靈活性將數(shù)據(jù)傳遞到組織
22、的每個角落,而成本僅為其他一些系統(tǒng)的一部分。 2.SQL Server簡化了開發(fā)、部署和管理業(yè)務(wù)線和分析應(yīng)用程序的復(fù)雜度,它為開發(fā)人員提供了一個靈活的開發(fā)環(huán)境,為數(shù)據(jù)庫管理人員提供了集成的自動管理工具。 3.SQL Server中集成的方法和對產(chǎn)品易用性和部署上的關(guān)注提供了行業(yè)上最低的規(guī)劃、實現(xiàn)和維護成本,使數(shù)據(jù)庫投資能快速得到回報。 其使用的SQL(Structured Query Language,結(jié)構(gòu)查詢語言)是一個功能強大的數(shù)據(jù)庫語言,通常使用于數(shù)據(jù)庫的通訊。美國國家標準學(xué)會ANSI 聲稱,SQL是關(guān)系數(shù)據(jù)庫管理系統(tǒng)的標準語言。SQL語句通常用于完成一些數(shù)據(jù)庫的操作任務(wù),比如在數(shù)據(jù)庫中
23、更新數(shù)據(jù),或者從數(shù)據(jù)庫中檢索數(shù)據(jù)等。SQL Server 2005 通過在可伸縮性、數(shù)據(jù)集成、開發(fā)工具和強大的分析等方面的革新更好的確立了微軟在BI領(lǐng)域的領(lǐng)導(dǎo)地位。從CEO 到信息工作者,員工可以快速的、容易的處理數(shù)據(jù),以更快更好的做出決策。SQL Server 2005全面的集成、分析和報表功能使企業(yè)能夠提高他們已有應(yīng)用的價值,即便這些應(yīng)用是在不同的平臺上。第2章.NET培訓(xùn)系統(tǒng)網(wǎng)站案例設(shè)計2.1 網(wǎng)站系統(tǒng)需求分析2.1.1性能需求分析教學(xué)資料管理系統(tǒng)是將現(xiàn)代化的計算機網(wǎng)絡(luò)技術(shù)和辦公自動化相結(jié)合,按照對教學(xué)資料管理流程設(shè)計完成的。為了使系統(tǒng)在學(xué)院的管理中發(fā)揮重要作用,實現(xiàn)工作過程的計算機化,
24、提高工作效率和工作質(zhì)量,現(xiàn)提出如下的系統(tǒng)性能需求:1系統(tǒng)應(yīng)具有實用性、可靠性和適用性,同時注意到先進性。2對各個數(shù)據(jù)庫進行動態(tài)管理,防止混亂。3能夠按照用戶選擇的不同的條件進行簡單查詢和復(fù)合查詢。4能夠?qū)Σ樵兘Y(jié)果進行分類匯總,便于查詢。5注意數(shù)據(jù)的安全性,具有數(shù)據(jù)備份和恢復(fù)的功能。6方便用戶的操作,盡量減少用戶的操作。2.1.2 功能分析1.瀏覽功能:系統(tǒng)部分頁面公開對非會員開發(fā),游客可以瀏覽有關(guān)課程信息內(nèi)容。2.登錄功能:用戶登陸系統(tǒng),系統(tǒng)自動判別用戶權(quán)限進行相對應(yīng)的登陸。3.注冊功能:用戶可以注冊用戶名,成為系統(tǒng)會員。4.報名功能:用戶可以根據(jù)自己需求選擇報名課程。5.添加功能:添加普通用
25、戶和管理員,管理員還可以對課程信息進行修改刪除操作。6.查詢功能:登錄論壇系統(tǒng)的會員可以進入查詢頁面查詢相應(yīng)帖子信息。7.下載功能:在課程網(wǎng)站頁面上,可以下載相應(yīng)的課程信息。8.維護功能:管理員可以對課程信息,會員發(fā)帖與回復(fù)內(nèi)容,以及用戶信息進行修改、刪除操作進行維護。9修改功能:對用戶權(quán)限范圍內(nèi)的資料信息進行修改,包括資料文件,個人信息等。10.退出功能:用戶登錄退出并返回首頁。2.1.3 運行環(huán)境分析本課程網(wǎng)站是基于.NET開發(fā)平臺下進行的開發(fā),所以該系統(tǒng)必須運行于裝有.NET Framework及以上版本框架的環(huán)境下。要運行該網(wǎng)站還需裝有SQL SERVER 2005數(shù)據(jù)庫以及IIS。因
26、為客戶端主要用于瀏覽和操作數(shù)據(jù),所以對客戶端的硬件要求不高?,F(xiàn)在的一般配置的電腦基本都可以運行流暢。系統(tǒng)概要設(shè)計開發(fā)模式分析一個好的系統(tǒng)架構(gòu)基本是由簡單明了的多個設(shè)計模式完成的。它具備靈活性、拓展性,這樣,可以對其進行更加具體的開發(fā)。樹形結(jié)構(gòu)是組織信息的基本形式,現(xiàn)在的網(wǎng)站或者ERP前臺都是以樹形菜單來組織功能的,那么在進行架構(gòu)設(shè)計時,就可以將樹形結(jié)構(gòu)和功能分開設(shè)計,他們之間聯(lián)系可以通過樹形結(jié)構(gòu)的節(jié)點link在一起,就象可以在圣誕樹的樹枝上掛各種小禮品一樣,這些小禮品就是要實現(xiàn)的各種功能。該企業(yè)網(wǎng)站是采用B/S(BROWSER/SERVER)的三層架構(gòu)模式開發(fā),實現(xiàn)整個課程網(wǎng)站的設(shè)計。這種系統(tǒng)
27、的優(yōu)勢在于系統(tǒng)簡單,功能強大,擴展能力良好以及跨地域操作性能。B/S模式通過Internet 進行通信,可以不受地域的限制,但缺點是不能進行聯(lián)機食物處理,并且在大量數(shù)據(jù)處理的過程中,速度較慢。該系統(tǒng)功能目標在于實現(xiàn)課程網(wǎng)站資源的共享,同時對不同用戶的權(quán)限控制以及用戶之間的談?wù)撆c技術(shù)交流。由于系統(tǒng)數(shù)據(jù)的實時性要求并不高,因此采用B/S結(jié)構(gòu)比較合理。功能設(shè)計描述1.課程介紹:對于.NET相關(guān)技術(shù)的課程資源進行介紹,列出該課程的所屬類別、課程講師以及下載地址等信息。2.課程報名:用戶進入課程網(wǎng)站,進入某一課程詳細頁面,可以點擊報名連接,填寫相關(guān)信息即可以報名。3.課程添加與修改操作:管理員登錄課程網(wǎng)
28、站后臺可以對課程信息進行添加與刪除操作。4.論壇模塊:在課程網(wǎng)站上,可以進入到課程網(wǎng)站所有的BBS頁面。該模塊主要是討論與該課程資源相關(guān)的技術(shù)知識。為.NET技術(shù)愛好者提供一個討論的平臺。5.論壇注冊:用戶可以登錄到注冊頁面進行相關(guān)注冊。只要注冊為會員才可以瀏覽相關(guān)頁面以及發(fā)帖。6.論壇登錄:當用戶成功注冊為會員后就可以登錄該論壇進行瀏覽與發(fā)帖操作。7.論壇管理:論壇的管理員可以對論壇中會員發(fā)貼內(nèi)容進行編輯與刪除操作,可以添加用戶,添加模塊等。超級管理員除了具有一般管理員所具有的操作外,還可以對系統(tǒng)中的用戶進行權(quán)限分配等操作。8.退出登錄:用戶點擊退出論壇系統(tǒng)按鈕后將會退出系統(tǒng)并返回首頁。網(wǎng)站
29、流程分析網(wǎng)站前臺主要包括課程首頁、登錄注冊頁面、課程模塊分類、論壇首頁、論壇模塊介紹、論壇帖子信息、系統(tǒng)公告等。網(wǎng)站前臺流程圖分析如圖2-1所示。圖 2-1 網(wǎng)站前臺流程圖網(wǎng)站后臺主要包括用戶登錄模塊,對用戶的身份進行認證。身份認證過程:確認用戶是否是有效的系統(tǒng)用戶,此過程決定用戶能否進入系統(tǒng)。課程頁面登錄后進入課程資源管理頁面,如若為系統(tǒng)管理員,則可以對課程資源進行相應(yīng)的修改與刪除操作。論壇頁面登錄后進入到登錄后的首頁,根據(jù)登錄會員信息展示相應(yīng)會員所具有的權(quán)限瀏覽頁面。后臺系統(tǒng)的流程分析如圖2-2所示。圖2-2 后臺系統(tǒng)的流程分析第3章 數(shù)據(jù)庫設(shè)計3.1 數(shù)據(jù)庫設(shè)計3.1.1 數(shù)據(jù)庫設(shè)計數(shù)據(jù)
30、庫是模塊建設(shè)中的關(guān)鍵部分,是該網(wǎng)站設(shè)計的核心,大量頁面和服務(wù)需要向數(shù)據(jù)庫表寫入信息,或更改、提取信息,用戶信息等保存到數(shù)據(jù)庫管理系統(tǒng)中。數(shù)據(jù)庫功能實現(xiàn)的好壞,直接決定了系統(tǒng)功能的實現(xiàn)程度,以及系統(tǒng)實際運行的安全性。在系統(tǒng)的開發(fā)及運行中,數(shù)據(jù)庫系統(tǒng)占有重要的地位,因為本系統(tǒng)擁有并使用大量的數(shù)據(jù)信息,所以系統(tǒng)的運行需要功能強大和完善的數(shù)據(jù)庫的支持。合理的數(shù)據(jù)庫設(shè)計在系統(tǒng)開發(fā)中是至關(guān)重要的,通過建立完整的數(shù)據(jù)表、表與表之間完善的聯(lián)系,可以存儲完備的信息數(shù)據(jù)等,并方便對數(shù)據(jù)庫的訪問和增、改、查等操作,繼而支持并簡化系統(tǒng)的整個使用流程、信息瀏覽功能等,方便了用戶的使用。本系統(tǒng)采用Microsoft公司的
31、大型數(shù)據(jù)庫系統(tǒng)SQL Server 2005。依據(jù)項目的處理需求,對應(yīng)數(shù)據(jù)表的設(shè)計及功能如下: 用戶表: 存放用戶以及管理員的基本信息 課程資源表: 存放網(wǎng)站課程的相關(guān)信息 課程技術(shù)表: 存放課程所屬的技術(shù)的信息 課程系列表: 存放課程所屬系列的信息 用戶報名表: 存放所以報名用戶的信息 論壇模塊表: 存放論壇中的模塊信息 論壇帖子表: 存放論壇帖子的信息 帖子回復(fù)表: 存放對帖子的評論信息數(shù)據(jù)庫E-R圖E-R圖是由實體、實體的屬性和實體之間的聯(lián)系三個要素組成的,現(xiàn)在E-R圖向關(guān)系模型轉(zhuǎn)換,系統(tǒng)的數(shù)據(jù)庫E-R圖見圖3-1所示。圖3-1 數(shù)據(jù)庫E-R圖數(shù)據(jù)庫表設(shè)計表3-1 用戶信息數(shù)據(jù)表(T_U
32、ser)字段名說明類型長度可否為空是否為主鍵ID自動編號int4否是LoginName登錄名nvarchar50是username昵稱nvarchar50是pwd密碼nvarchar50是email郵箱nvarchar50是isAdmin管理員bit8是tCreate注冊時間datetime50否表3-2 課程資源數(shù)據(jù)表(T_Course)字段名說明類型長度可否為空是否為主鍵ID自動編號int4否是TechID技術(shù)表IDint4是TypeId系列表IDint4是CastName課程名nvarchar50是Memo介紹ntext100是BeginTime開始時間datetime50是Lectur
33、er講師nvarchar50是Profession職稱nvarchar50是LoadAddress下載地址ntext100是CreatTime創(chuàng)建時間datetime50否表3-3 課程技術(shù)數(shù)據(jù)表(T_Tech)字段名說明類型長度可否為空是否為主鍵ID自動編號int4否是name技術(shù)名稱nvarchar50是CreateTime創(chuàng)建時間datetime50否表3-4 課程系列數(shù)據(jù)表(T_Type)字段名說明類型長度可否為空是否為主鍵ID自動編號int4否是name技術(shù)名稱nvarchar50是CreateTime創(chuàng)建時間datetime50否表3-5 用戶報名數(shù)據(jù)表(T_Type)字段名說明類
34、型長度可否為空是否為主鍵ID自動編號int4否是Username用戶姓名nvarchar50是CustName課程名稱nvarchar50是Sex性別nvarchar2是Birth出生日期nvarchar50是Degree學(xué)歷nvarchar10是Profession專業(yè)nvarchar10是Phone nvarchar50是Mail郵箱nvarchar50是Address地址nvarchar50是CreateTime創(chuàng)建時間datetime50否表3-6 論壇模塊數(shù)據(jù)表(T_Module)字段名說明類型長度可否為空是否為主鍵ModuleID自動編號int4否是ModuleName模塊名稱nv
35、archar50是ModuleDate創(chuàng)建時間datetime50否ModuleMemo模塊介紹nvarchar50是ModuleAdmin版主nvarchar50是表3-7 論壇帖子數(shù)據(jù)表(T_Card)字段名說明類型長度可否為空是否為主鍵CardID自動編號int4否是UserID用戶IDint4是ModuleID模塊IDint4是CardName帖子標題nvarchar50是CardContent帖子內(nèi)容ntext100是CardIsPride是否推薦bit4是CardDate發(fā)表時間datetime50否isShow是否顯示bit4是Img照片地址ntext100是表3-8 帖子回復(fù)數(shù)
36、據(jù)表(T_RevertCard)字段名說明類型長度可否為空是否為主鍵RevertCardID自動編號int4否是UserID用戶IDint4是CardID帖子IDint4是RevertCardContent回復(fù)內(nèi)容ntext100是RevertCardDate回復(fù)時間datetime50否第4章 系統(tǒng)功能實現(xiàn)4.1 網(wǎng)站結(jié)構(gòu)體系4.2 通用類庫設(shè)計本課程網(wǎng)站采用的是WEB開發(fā)常用的三層架構(gòu)模式開發(fā)即數(shù)據(jù)可訪問層,業(yè)務(wù)邏輯層,用戶表示層,采用這個模式開發(fā)可以降低層與層之間的依賴,便有合作開發(fā),更有理各層邏輯的重復(fù)使用。數(shù)據(jù)庫訪問層其功能主要是負責數(shù)據(jù)庫的訪問,所以把它單獨存放于類中一邊使用。主要
37、代碼為:1.數(shù)據(jù)庫連接設(shè)置 string connectionString = System.Configuration.ConfigurationManager.ConnectionStringssky.ConnectionString;/從配置文件中獲取連接數(shù)據(jù)庫字符串 SqlConnection connection = null; SqlCommand cmd = null; SqlDataAdapter adapter = null; public DAL() /初始化數(shù)據(jù) connection = new SqlConnection(connectionString); cmd =
38、 new SqlCommand(); cmd.Connection = connection; adapter = new SqlDataAdapter(cmd); 2.執(zhí)行查詢操作 public DataTable GetList(string sql, Dictionary paramValues) /根據(jù)條件取數(shù)據(jù) cmd.CommandText = sql; cmd.CommandType = CommandType.Text; if (paramValues != null) foreach (KeyValuePair item in paramValues) SqlParamete
39、r p = new SqlParameter(); p.ParameterName = + item.Key; p.Value = item.Value; cmd.Parameters.Add(p); DataTable Dtb = new DataTable(); try SqlDataAdapter Da = new SqlDataAdapter(); Da.SelectCommand = cmd; cmd.Connection.Open(); Da.Fill(Dtb); catch throw; finally cmd.Connection.Close(); return Dtb; 3.
40、新增、刪除、修改等操作 #region = Excute = 執(zhí)行非查詢操作 public int Excute(string sql, Dictionary paramValues) cmd.CommandText = sql; cmd.CommandType = CommandType.Text; int n = 0; if (paramValues != null) foreach (KeyValuePair item in paramValues) SqlParameter p = new SqlParameter(); p.ParameterName = + item.Key; p.
41、Value = item.Value; cmd.Parameters.Add(p); try connection.Open(); n = cmd.ExecuteNonQuery(); catch throw; finally connection.Close(); return n; 業(yè)務(wù)邏輯層在體系架構(gòu)中的位置很關(guān)鍵,它處于數(shù)據(jù)訪問層與表示層中間,起到了數(shù)據(jù)交換中承上啟下的作用。系統(tǒng)的核心業(yè)務(wù)處理都是放在該層當中,所以新建了個類以存放該層數(shù)據(jù)。其主要代碼如下:1.查詢方法 public DataTable GetList(string sql, string paramName, obje
42、ct paramValue) /根據(jù)要查詢的SQL語句,執(zhí)行查詢數(shù)據(jù)庫操作 Dictionary pm = new Dictionary(); pm.Add(paramName, paramValue); return dal.GetList(sql, pm); 2.插入方法 #region = Insert = 執(zhí)行插入操作 public int Insert(string tableName, Dictionary colvalues)/根據(jù)提供的要插入的表名和列名數(shù)據(jù),執(zhí)行插入操作 StringBuilder sb = new StringBuilder(); sb.AppendForm
43、at( insert into 0 (, tableName); string flag = ; foreach (KeyValuePair item in colvalues) sb.AppendFormat(01, flag, item.Key); flag = ,; sb.Append() Values (); flag = ; foreach (KeyValuePair item in colvalues) sb.AppendFormat(01, flag, item.Key); flag = ,; sb.Append(); return dal.Excute(sb.ToString(
44、), colvalues);/執(zhí)行非查詢操作 #endregion3.更新方法 public int Update(string table, Dictionary colValues, Dictionary where)/根據(jù)提供的要插入的表名和列名數(shù)據(jù)以及要更新的數(shù)據(jù),執(zhí)行插入操作 Dictionary pm = new Dictionary(); StringBuilder sb = new StringBuilder(); sb.AppendFormat( update 0 set , table); string flag = ; foreach (KeyValuePair item
45、 in colValues) sb.AppendFormat(01=21, flag, item.Key, ); flag = ,; pm.Add(item.Key, item.Value); flag = where ; foreach (KeyValuePair item in where) sb.AppendFormat(01=1, flag, item.Key); flag = and ; pm.Add(item.Key, item.Value); return dal.Excute(sb.ToString(), pm); 4.刪除方法 public int Delete(string
46、 table, string pkid,string values) string sql = string.Format(delete from 0 where 1=2, table, pkid, values); return dal.Excute(sql); 該層的方法都會調(diào)用數(shù)據(jù)庫訪問層中的方法進行操作數(shù)據(jù)庫。其他層都是通過該層來訪問數(shù)據(jù)庫,可以說該層為通用模塊。4.3 網(wǎng)站模塊實現(xiàn)4.3.1 首頁顯示模塊課程網(wǎng)站首頁前臺如圖4-1所示。圖4-1 網(wǎng)站首頁課程網(wǎng)站首頁前臺數(shù)據(jù)顯示是通過Repeater控件進行數(shù)據(jù)綁定,前臺代碼如下: a href=Detail.aspx?ID= nam
47、e= rel=nofollow class=address 開始時間: 系列: 技術(shù): a href=CastInfo.aspx?TechID= 講師: - a href= target=_blank rel=nofollow下載課程 asp:LinkButton ID=LinkButton1 runat=server CommandName=delete CommandArgument= OnClientClick=return confirm(確定刪除?)刪除 后臺代碼如下:BLL bll = new BLL(); public static bool isadmin = false; p
48、rotected void Page_Load(object sender, EventArgs e) if (!IsPostBack) if (CustLoginMgr.IsLogin) if (CustLoginMgr.IsAdmin) isadmin = true; this.myList.DataSource = bll.GetList(select * from T_Course order by CreatTime desc); this.myList.DataBind(); this.MyRepeater.DataSource = bll.GetList(select * fro
49、m T_Type); this.MyRepeater.DataBind(); public string GetString(int id, string table) DataTable da = bll.GetList(string.Format(select name from 0 where id=1, table, id); return da.Rows0name.ToString(); protected void myList_ItemCommand(object source, RepeaterCommandEventArgs e) bll.Delete(T_Course, I
50、D, e.CommandArgument.ToString();論壇首頁如圖4-2所示。圖4-2 論壇首頁論壇框架采用frameset框架,用于組織多個框架和嵌套框架集。論壇系統(tǒng)中將登錄后的網(wǎng)站上中下三個部分,上部分顯示頁面,下部分顯示頁面,中間部分又分為左右兩部分,左邊顯示頁面,右邊顯示頁面。其主要代碼如下:public partial class BBS_Default : WebApp.PageCust static readonly string HTML = 精品論壇; protected void Page_Load(object sender, EventArgs e) Resp
51、onse.Clear();/清除現(xiàn)有頁面內(nèi)容 Response.Write(HTML);/寫入frameset框架 Response.End();/結(jié)束輸出 4.3.2 用戶報名模塊用戶報名頁面如圖4-3所示。圖4-3 用戶課程報名頁面圖4-4 報名成功提示頁面用戶等課程網(wǎng)站,點擊某一課程后進入詳細頁面,該頁面上會顯示課程報名連接,用戶點擊該連接則會進入用戶報名頁面。用戶根據(jù)相關(guān)要求輸入相關(guān)信息后點擊報名按鈕,成功報名后則跳轉(zhuǎn)到報名成功提示頁面如圖4-4所示。主要實現(xiàn)代碼如下:protected void btn_save_Click(object sender, EventArgs e) s
52、tring name = this.txt_name.Text.Trim(); string CustName = this.txt_Course.Text.Trim(); string sex = this.DDL_Sex.SelectedItem.Text; string birth = this.txt_birth.Text.Trim(); string degree = this.txt_Degree.Text.Trim(); string profession = this.txt_Profession.Text.Trim(); string phone = this.txt_Pho
53、ne.Text.Trim(); string mail = this.txt_Mail.Text.Trim(); string address = this.txt_address.Text.Trim(); Dictionary pm = new Dictionary(); pm.Add(Username, name); pm.Add(CustName, CustName); pm.Add(Sex, sex); pm.Add(Birth, birth); pm.Add(Degree, degree); pm.Add(Profession, profession); pm.Add(Phone,
54、phone); pm.Add(Mail, mail); pm.Add(Address, address); try int a = bll.Insert(T_CourseUser, pm);/執(zhí)行插入數(shù)據(jù)庫操作 catch (Exception)/報名失敗提示信息 string script = alert(失??!); this.ClientScript.RegisterStartupScript(this.GetType(), script, script); return; Response.Redirect(Success.aspx);/跳轉(zhuǎn)到報名成功提示頁面 4.3.3 用戶注冊模塊論
55、壇注冊頁面如圖4-5所示。圖 4-5注冊頁面注冊頁面實現(xiàn)的是對論壇用戶的新增操作,用戶根據(jù)要求填寫相關(guān)信息后,必須選中同意網(wǎng)站服務(wù)條款選項方可注冊。點擊確定按鈕提示注冊成功信息框。主要代碼如下所示:protected void registerformsubmit_Click(object sender, EventArgs e) if (this.agreebbrule.Checked) Dictionary user = new Dictionary(); user.Add(LoginName, this.username.Text.Trim(); user.Add(username, t
56、his.txt_name.Text.Trim(); user.Add(pwd, this.password.Text.Trim(); user.Add(email, this.email.Text.Trim(); int a = bll.Insert(T_user, user); if (a 0) this.Alert(注冊成功); else this.Alert(注冊失敗); return; else this.Alert(注冊失敗!請選擇同意網(wǎng)站服務(wù)條款!); 4.3.4 用戶登錄模塊登錄頁面如圖4-6所示。圖4-6 登錄頁面用戶登錄模塊頁面實現(xiàn)了用戶登錄操作。用戶填寫已經(jīng)注冊的用戶名和密
57、碼之后,單擊立即登錄按鈕,系統(tǒng)調(diào)用通用模塊中用戶登錄類進行判斷,若用戶名密碼正確,則提示登錄成功,否則提示用戶名或密碼錯誤。具體代碼如下:protected void btn_submit_Click(object sender, EventArgs e) string mess = ; if (CustLoginMgr.Login(this.username.Text, this.password.Text, out mess) Response.Redirect(default.aspx);/成功登錄后跳轉(zhuǎn)到登錄后的首頁 else this.Alert(mess);/登錄失敗,彈出失敗原因
58、 論壇登錄頁面如圖4-7所示。圖 4-7 論壇登錄論壇登錄功能模塊主要實現(xiàn)對論壇用戶的進入網(wǎng)站的管理功能,其主要代碼如下所示:protected void btn_submit_Click(object sender, EventArgs e) string mess = ; if (CustLoginMgr.Login(this.username.Text, this.password.Text, out mess) Response.Redirect(default.aspx); else this.Alert(mess); 4.3.5 權(quán)限管理模塊權(quán)限分配模塊頁面,此頁面主要對用戶所具有
59、的權(quán)限頁面綁定,普通用戶跟管理員用戶登錄后顯示的頁面各有不同,前臺代碼如下所示: 系統(tǒng)管理 首 頁 瀏覽模塊 添加模塊 模塊管理 瀏覽帖子 發(fā)表帖子 管理帖子 管理報名用戶 課程資源管理 新增資源管理 用戶管理 用戶信息 用戶管理 高級操作 公告管理 新增公告 var contents = document.getElementsByClassName(content);var toggles = document.getElementsByClassName(type);var myAccordion = new fx.Accordion(toggles, contents, opacity
60、: true, duration: 400);myAccordion.showThisHideOpen(contents0); 后臺代碼主要是判斷用戶身份,普通會員、管理員、超級管理員等。其代碼如下所示:protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) for (int i = 1; i = 30; i+) Control c = this.FindControl(lkAdmin + i); if (c != null) c.Visible = CustLoginMgr.IsLogin & CustLog
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 贛南師范大學(xué)科技學(xué)院《廣告規(guī)范與數(shù)據(jù)倫理》2023-2024學(xué)年第一學(xué)期期末試卷
- 贛東學(xué)院《環(huán)境市政工程制圖》2023-2024學(xué)年第一學(xué)期期末試卷
- 甘肅中醫(yī)藥大學(xué)《血液流變學(xué)與人體健康》2023-2024學(xué)年第一學(xué)期期末試卷
- 七年級道德與法治上冊第四單元生命的思考第九課珍視生命第二框增強生命的韌性教案新人教版
- 三年級科學(xué)上冊第二單元人與植物4保護植物第二課時教案首師大版
- 陪護工作培訓(xùn)課件
- 五年級數(shù)學(xué)(小數(shù)乘除法)計算題專項練習及答案
- 親自調(diào)查作決策課件
- 《龍華項目調(diào)查》課件
- 《物價指數(shù)》課件
- 《中國古代文學(xué)史——李白》優(yōu)秀PPT課件
- 機械設(shè)計制造及其自動化實習總結(jié)報告——某
- 角的概念推廣說課課件.
- 壓密注漿施工工藝
- 2019-2020學(xué)年江蘇省徐州市九年級(上)期末英語試卷(解析版)
- 履帶吊驗收表
- AAEM的應(yīng)用機理
- 2018-2019學(xué)年第一學(xué)期西城小學(xué)三年級數(shù)學(xué)期末試題
- GB-T-12137-2015-氣瓶氣密性試驗方法
- 學(xué)生學(xué)習挑戰(zhàn)書
- 煙葉種植及加工項目可行性研究報告寫作范文
評論
0/150
提交評論