畢業(yè)設計(論文)ASP.NET在線課件管理系統(tǒng)的設計與實現(xiàn)
《畢業(yè)設計(論文)ASP.NET在線課件管理系統(tǒng)的設計與實現(xiàn)》由會員分享,可在線閱讀,更多相關《畢業(yè)設計(論文)ASP.NET在線課件管理系統(tǒng)的設計與實現(xiàn)(83頁珍藏版)》請在裝配圖網上搜索。
1、在線課件管理系統(tǒng)的設計與實現(xiàn) 【摘要】在資訊和信息越來越重要的時代,精彩的網絡在悄悄改變著人們的工作、生活和學習的理念?;ヂ?lián)網成為人們快速獲取、發(fā)布和傳遞信息的重要渠道。網絡上發(fā)布信息主要是通過網站來實現(xiàn)的,獲取信息也是要在網絡中按照一定的檢索方式將所需要的信息從網站上下載下來。本設計所開發(fā)的在線課件管理系統(tǒng),能為同學們提供一個更加方便分享課件的平臺,達到讓同學們能隨時掌握課件的更新和分享情況,從而使得同學們能更快掌握課件信息。 這次的畢業(yè)設計使用了微軟ASP.NET的來實現(xiàn)網站,網站后臺的編程語言是C#.NET來實現(xiàn)功能的,同時也使用到微軟的SQL2008數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)的保存功能。希望這
2、樣能提高網站的工作的效率。 【關鍵詞】在線;互聯(lián)網;課件管理系統(tǒng) Design and Realization of On-line Courseware Management System 【Abstract】In modern society, information become more and more important. Students and teachers are all sharing the courseware throug
3、h Internet. This paper use ASP.NET, C#.NET and SQL 2008 to make a On-line Courseware Management System. It can receive the teachers materials which can be downloaded by the students. 【Keywords】 On-line, Internet, Courseware Management System 享有工作室-為您提供最優(yōu)秀的計算機畢業(yè)設計論文解決方案 客服QQ:810354974/8445
4、11071/465729264 目 錄 第一章 引 言 1 1.1在線課件管理系統(tǒng)開發(fā)簡介 1 1.2 本課題的研究意義 3 1.3主要研究工作 4 第二章 基礎知識介紹 5 2.1 ASP.NET概述 5 2.1.1 ASP.NET的主要功能與特點 6 2.1.1.1 Web服務器控件簡介 6 2.1.1.2 HTML服務器控件 7 2.1.1.3 ASP.NET標準服務器控件 7 2.2 C#.NET概述 9 2.2.1 C#.NET的主要功能與特點 10 2.2.2 查詢數(shù)據(jù)庫舉例 12 2.3 數(shù)據(jù)庫技術 15 2.3.1 數(shù)據(jù)庫簡介 15
5、 2.3.2 SQL Server 2008數(shù)據(jù)庫的常用命令 15 2.4 IIS的配置 17 2.4.1 IIS概述 17 2.4.2 IIS簡單配置 17 2.5 本章小結 19 第三章 具體設計 20 3.1 總體設計思路 20 3.1.1 具體設計思路 20 3.1.2 網站的連接結構 22 3.2 用戶管理 23 3.3 網站結構設計 23 3.3.1 系統(tǒng)功能分析與設計 23 3.3.2 數(shù)據(jù)庫結構設計 24 3.4 本章小結 25 第四章 網站設計的實現(xiàn) 27 4.1 動態(tài)網頁各部分的實現(xiàn) 27 4.2 網頁中的ASPX代碼 27 4.3
6、本章小結 47 第五章 性能測試與分析 48 5.1 啟動在線課件管理系統(tǒng) 48 5.2 運行各個模塊進行調試 48 5.3 對調試結果進行分析 48 結 論 53 致 謝 54 參考文獻 55 第一章 引 言 本世紀是信息時代,高等教育更是信息時代的擔當者。校園的網絡信息化建設已基本實現(xiàn)從服務器、網絡等硬件環(huán)境,輻射教學、管理等應用軟件系統(tǒng)和網站。高等學校網絡化的建設是十分必要的一項工作,目的是通過建設校園網絡,把網絡資源切實有效的應用到教育教學中,提高教學效率和數(shù)學效果。學校網絡的使用,改變了教師的教學方式,也改變了學生的學習方式。充分利用網絡資源條件,使
7、其更好地為教學服務。同時隨著社會經濟和Web技術的發(fā)展,人們不再滿足于僅能瀏覽信息的靜態(tài)網頁,更多的時候需要能與同時上網的互聯(lián)網用戶進行交流和發(fā)表自己的意見見解,這樣,能提供后臺數(shù)據(jù)庫的管理和控制等服務的動態(tài)網站有了誕生的必要。近年來,隨著互聯(lián)網在中國的迅速發(fā)展,這一利用網絡信息進行交流資料和信息的方式得到迅速發(fā)展。 在校園中通過網絡的信息技術,可以使教育教學資源自由共享,優(yōu)化教育教學方式,同時還可以培養(yǎng)和提高學生獲取各種信息的素養(yǎng),這樣可以信息化網絡校園環(huán)境,從而達到實現(xiàn)教育信息化,這是信息時代學習方式改變的新理念。 在線課件管理系統(tǒng)在一定的程度上可以實現(xiàn)老師學習資料與同學的同步,不論
8、是學生是否在校園,在任何時間只要可以上網就可以的到老師的第一手學習資料。網站通過不同成員的登錄,也同樣可以很好的規(guī)范課件管理和存儲,使得課件的管理有條不紊,同學們也能準確地找到所需,還能降低教師的工作量,提高同學們的學習效率,優(yōu)化了學習環(huán)境。 1.1在線課件管理系統(tǒng)開發(fā)簡介 ASP.NET是一種動態(tài)網站開發(fā)的應用程序,是微軟公司推出的一種全新的基于B/S模型的技術,并有集成Visual Studio 2010的支持。ASP.net是把基于通用語言的程序在服務器上運行。不像以前的ASP即時解釋程序,而是將程序在服務器端首次運行時進行編譯,這樣的執(zhí)行效果,當然比一條一條的解釋強很多。因為ASP
9、.NET是基于通用語言的編譯運行的程序,所以它的強大性和適應性,可以使它運行在Web應用軟件開發(fā)者的幾乎全部的平臺上。通用語言的基本庫,消息機制,數(shù)據(jù)接口的處理都能無縫的整合到ASP.NET的Web應用中。ASP.NET同時也是 language-independent語言獨立化的,所以,使用者可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現(xiàn)在已經 支持的有C#(C++和Java的結合體),VB,Jscript。將來這樣的多種程序語言協(xié)同工作的能力保護您現(xiàn)在的基于COM+開發(fā)的程序,能夠完整的移植向ASP.NET 的平臺下。應為這次的網站后臺程序是用C#.
10、NET來開發(fā)的,所以以下對C#.NET進行簡介。 C#.NET使用一種字符基礎的,分級的配置系統(tǒng),使你服務器環(huán)境和應用程序的設置更加簡單。因為配置信息都保存在簡單文本中,新的設置有可能都不需要啟動本地的管理員工具就可以實現(xiàn)。這種被稱為"Zero Local Administration"的哲學觀念使C#.NET的基于應用的開發(fā)更加具體,和快捷。一個C#.NET的應用程序在一臺服務器系統(tǒng)的安裝只需要簡單的拷貝一些必須得文件,不需要系統(tǒng)的重新啟動,一切就是這么簡單。多處理器環(huán)境的可靠性 C#.NET已經被刻意設計成為一種可以用于多處理器的開發(fā)工具,它在多處理器的環(huán)境下用特殊的無縫連接技術,將很大
11、的提高運行速度。即使你現(xiàn)在的C#.NET應用軟件是為一個處理器開發(fā)的,將來多處理器運行時不需要任何改變都能提高他們的效能,但現(xiàn)在的ASP確做不到這一點。自定義性和可擴展性 C#.NET設計時考慮了讓網站開發(fā)人員可以在自己的代碼中自己定義"plug-in"的模塊。這與原來的包含關系不同,C#.NET可以加入自己定義的如何組件。網站程序的開發(fā)從來沒有這么簡單過。安全性基于Windows認證技術和每應用程序配置,你可以確性你的原程序時絕對安全的。 C#.NET 的語法在很大程度上與 ASP 兼容,同時它還提供一種新的編程模型和結構,可生成伸縮性和穩(wěn)定性更好的應用程序,并提供更好的安全保護??梢酝?/p>
12、過在現(xiàn)有 ASP 應用程序中逐漸添加 C#.NET 功能,隨時增強 ASP 應用程序的功能。 C#.NET 是一個已編譯的、基于 .NET 的環(huán)境,把基于通用語言的程序在服務器上運行。將程序在服務器端首次運行時進行編譯,比ASP即時解釋程序速度上要快很多.而且是可以用任何與 .NET 兼容的語言(包括 Visual Basic .NET、C# 和 JScript .NET.)創(chuàng)作應用程序。 另外,任何 C#.NET 應用程序都可以使用整個 .NET Framework。開發(fā)人員可以方便地獲得這些技術的優(yōu)點,其中包括托管的公共語言運行庫環(huán)境、類型安全、繼承等等。 C#.NET 可以無縫地與 W
13、YSIWYG HTML 編輯器和其他編程工具(包括 Microsoft Visual Studio .NET)一起工作。這不僅使得 Web 開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點,包括開發(fā)人員可以用來將服務器控件拖放到 Web 頁的 GUI 和完全集成的調試支持。 當創(chuàng)建 C#.NET 應用程序時,開發(fā)人員可以使用 Web 窗體或 XML Web services,或以他們認為合適的任何方式進行組合。每個功能都能得到同一結構的支持,使您能夠使用身份驗證方案,緩存經常使用的數(shù)據(jù),或者對應用程序的配置進行自定義。 除此之外還有許多動態(tài)網站的開發(fā)技術,如Java Servlets技
14、術,利用該技術可以很容易地用Java語言編寫交互式的服務器端代碼。一個Java Servlets就是一個基于Java技術的運行在服務器端的程序(與Applet不同,后者運行在瀏覽器端)。開發(fā)人員編寫這樣的Java Servlets,以接收來自Web瀏覽器的HTTP請求,動態(tài)地生成響應(可能需要查詢數(shù)據(jù)庫來完成這種請求),然后發(fā)送包含HTML或XML文檔的響應到瀏覽器。這種技術對于普通的頁面設計者來說要輕易地掌握是很困難的。采用這種方法,整個網頁必須都在Java Servlets中制作。如果開發(fā)人員或者Web管理人員想要調整頁面顯示,就不得不編輯并重新編譯該Java Servlets。太
15、陽微系統(tǒng)公司(Sun Microsystems Inc.)在Web服務器、應用服務器、交易系統(tǒng)以及開發(fā)工具供應商間廣泛支持與合作下,整合并平衡了已經存在的對Java編程環(huán)境(例如Java Servlets和JavaBeans)進行支持的技術和工具后產生了一種新的、開發(fā)基于Web應用程序的方法——JavaServer Pages技術(JSP)。 所以經過總結,ASP.NET的優(yōu)點可以歸結為以下幾點: (1)能夠在任何Web或應用程序服務器上運行; (2)分離了應用程序的邏輯和頁面顯示; (3)能夠進行快速的開發(fā)和測試; (4)簡化了開發(fā)基于Web的交互式應用
16、程序的過程 . 1.2 本課題的研究意義 當今的社會是一個信息爆炸的社會。互聯(lián)網的出現(xiàn)加速了這種信息爆炸的當量。導致信息泛濫成災,嚴重地阻礙和影響著知識和信息的傳播。隨著Internet的普及,互聯(lián)網以一股巨大變革力量的面貌出現(xiàn)在商務關系領域。其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。 在現(xiàn)在這個時代中,網絡的巨大優(yōu)勢顯露無疑:那就是超越信息,將信息轉化為知識。著名的經濟學家、1972年諾貝爾經濟學獎獲得者赫伯特西蒙早在20多年前就指出過:在信息時代,最稀缺的資源不再是信息本身,而是對信息的處理能力。傳統(tǒng)的各種網絡工具(搜索引擎、網上查詢、數(shù)據(jù)挖
17、掘)以及各種軟件工具等,越來越難以滿足深層次的需要。如何讓信息和知識通過互聯(lián)網有序、廣泛、深入地傳播,將零散、隱形的知識快速轉化為具有使用價值的顯性知識。這是當今社會最為關心的問題。博客技術的出現(xiàn)為人們提供了一種全新可能。網絡開始真正凸現(xiàn)無窮的知識價值。 在現(xiàn)在的校園里,網絡已經成為了不可替代的一種工具。其帶來的效率是不可忽視的。在高校信息化網絡建設信息技術的開發(fā)應用,以學習資源信息化的全面展開應用為主線,全面創(chuàng)建信息化校園,加強學校教育資源建設。微觀上講,高校信息化網絡建設包含了計算機化、網絡化、智能化,反映的是信息能力的高度運用。具有很強的實踐性。高校信息化網絡建設 與應用突出了信息化網
18、絡的應用主題,其最終目的是更好地開展并實現(xiàn)教育信息化、網絡信息化。 為了適應信息網絡形勢,緊跟時代潮流,使自己能在新世紀中運用網絡傳播渠道建立學習的新環(huán)境,利用網絡的方便性提高學習效率,讓老師和同學方便交流,利用網站隨時在線的特點,創(chuàng)建彼此分享學習資料的的橋梁。這也是我創(chuàng)建該網站的初衷。 1.3主要研究工作 在線課件管理系統(tǒng)一般來說使用有三大對象對象:老師、同學和系統(tǒng)的管理人員。 在線課件管理系統(tǒng)主要要達到以下要求:管理員可以看到所有的老師和同學的信息,并可以添加刪除老師和同學的信息,而且管理可以把一些出錯了或者太舊的課件進行刪除,并且也可以上傳課件,同時還可以修改自己的登錄密碼;而對
19、于老師角色的要求是:可以上傳課件,和下載課件,可以修改自己的登錄密碼;對于學生這個角色的要求是:可以下載課件,可以修改自己的登錄密碼,可以查看老師的信息。這個系統(tǒng)因為考慮到僅僅面對學校的同學開放,所以必須要登錄后才可以瀏覽網頁,對于普通的網絡瀏覽者并不開放。對于安全和維護的考慮,系統(tǒng)將有一個后臺頁面,僅對于管理員開放。 系統(tǒng)的開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的數(shù)據(jù)庫。而對于后者則要求應用程序功能完備,易使用等特點。 第二章 基礎知識介紹 2.1 ASP.NET概述 ASP
20、.NET 是一個統(tǒng)一的 Web 開發(fā)模型,它包括您使用盡可能少的代碼生成企業(yè)級 Web 應用程序所必需的各種服務。ASP.NET 作為 .NET Framework 的一部分提供。當您編寫 ASP.NET 應用程序的代碼時,可以訪問 .NET Framework 中的類。您可以使用與公共語言運行庫 (CLR) 兼容的任何語言來編寫應用程序的代碼,這些語言包括 Microsoft Visual Basic、C#、JScript .NET 和 J#。使用這些語言,可以開發(fā)利用公共語言運行庫、類型安全、繼承等方面的優(yōu)點的 ASP.NET 應用程序。 ASP.NET 頁和控件框架是一種編程框架,它在
21、 Web 服務器上運行,可以動態(tài)地生成和呈現(xiàn) ASP.NET 網頁??梢詮娜魏螢g覽器或客戶端設備請求 ASP.NET 網頁,ASP.NET 會向請求瀏覽器呈現(xiàn)標記(例如 HTML)。通常,您可以對多個瀏覽器使用相同的頁,因為 ASP.NET 會為發(fā)出請求的瀏覽器呈現(xiàn)適當?shù)臉擞洝5?,您可以針對諸如 Microsoft Internet Explorer 6 的特定瀏覽器設計 ASP.NET 網頁,并利用該瀏覽器的功能。ASP.NET 支持基于 Web 的設備(如移動電話、手持型計算機和個人數(shù)字助理 (PDA))的移動控件。 ASP.NET 網頁是完全面向對象的。在 ASP.NET 網頁中,
22、可以使用屬性、方法和事件來處理 HTML 元素。ASP.NET 頁框架為響應在服務器上運行的代碼中的客戶端事件提供統(tǒng)一的模型,從而使您不必考慮基于 Web 的應用程序中固有的客戶端和服務器隔離的實現(xiàn)細節(jié)。該框架還會在頁處理生命周期中自動維護頁及該頁上控件的狀態(tài)。使用 ASP.NET 頁和控件框架還可以將常用的 UI 功能封裝成易于使用且可重用的控件??丶恍杈帉懸淮?,即可用于許多頁并集成到 ASP.NET 網頁中。這些控件在呈現(xiàn)期間放入 ASP.NET 網頁中。 ASP.NET 頁和控件框架還提供各種功能,以便可以通過主題和外觀來控制網站的整體外觀和感覺??梢韵榷x主題和外觀,然后在頁面級或
23、控件級應用這些主題和外觀。除了主題外,還可以定義母版頁,以使應用程序中的頁具有一致的布局。一個母版頁可以定義您希望應用程序中的所有頁(或一組頁)所具有的布局和標準行為。然后 可以創(chuàng)建包含要顯示的頁特定內容的各個內容頁。當用戶請求內容頁時,這些內容頁與母版頁合并,產生將母版頁的布局與內容頁中的內容組合在一起的輸出。 在 ASP.NET 網頁中,用戶界面編程分為兩個部分:可視組件和邏輯。如果您以前使用過類似于 Visual Basic 和 Visual C++ 的工具,您將認同在頁的可視部分和頁后與之交互的代碼之間存在這樣一種劃分。 可視元素由一個包含靜態(tài)標記(例如 HTML 或 ASP.NE
24、T 服務器控件或兩者)的文件組成。ASP.NET 網頁用作要顯示的靜態(tài)文本和控件的容器。 ASP.NET 網頁的邏輯由代碼組成,這些代碼由您創(chuàng)建以與頁進行交互。代碼可以駐留在頁的 script 塊中或者單獨的類中。如果代碼在單獨的類文件中,則該文件稱為“代碼隱藏”文件。 ASP.NET 網頁編譯為動態(tài)鏈接庫 (.dll) 文件。用戶第一次瀏覽到 .aspx 頁時,ASP.NET 自動生成表示該頁的 .NET 類文件,然后編譯此文件。.dll 文件在服務器上運行,并動態(tài)生成頁的 HTML 輸出。 2.1.1 ASP.NET的主要功能與特點 利用ASP.NET 技術,創(chuàng)建Web動態(tài)網站,
25、這需要研發(fā)人員了解并能夠靈活應用多種Web研發(fā)技術,例如,CSS樣式表、客戶端 腳本語言、.NET研發(fā)語言、服務器控件研發(fā)技術,甚至是當前最火的AJAX技術等等。要實現(xiàn)一些要求的功能,使用這種研發(fā)技術不是那么困難?,F(xiàn)在就簡單介紹一下ASP.NET主要功能和一些特點,然后再對創(chuàng)建Web自定義服務器控件的基礎知識進行一定的介紹。 2.1.1.1 Web服務器控件簡介 在ASP.NET 2.0中,Web服務器控件是指在服務器上執(zhí)行程式邏輯的組件。這個組件可能生成一定的用戶界面,也可能不包括用戶界面。每個服務器控件都包含一些成員對象,以便研發(fā)人員調用。例如:屬性、事件、方法等。 通常情況下,
26、服務器控件都包含在ASP.NET頁面中。當運行頁面時,.NET執(zhí)行引擎將根據(jù)控件成員對象和程式邏輯定義完成一定的功能。例如,在客戶端呈 現(xiàn)用戶界面。這時,用戶可和控件發(fā)生交互行為,當頁面被用戶提交時,控件可在服務器端引發(fā)事件,并由服務器端根據(jù)相關事件處理程式來進行事件處理。服務器 控件是WebForm編程模型的重要元素,他們構成了一個新的、基于控件的表單程式的基礎。通過這種方式能夠簡化Web應用程式的研發(fā),提高應用程式的研發(fā)效率。 服務器控件的廣泛應用,簡化了應用程式的研發(fā),提高了工作效率。那么,何時應創(chuàng)建并使用自定義服務器控件呢?下面列舉了在三種具體適用情況: (1)某個現(xiàn)有服務器控件基
27、本符合應用需要,但是,缺少某些特別的功能,這 享有工作室-為您提供最優(yōu)秀的計算機畢業(yè)設計論文解決方案 客服QQ:810354974/844511071/465729264 時能夠通過從現(xiàn)有控件中派生并重寫其屬性、方法或事件來自定義服務器控件。 (2)需要使用的服務器控件結合了兩個或多個現(xiàn)有控件的功能,例如,封裝一個按鈕和一個文本框的復合控件。此時能夠通過創(chuàng)建服務器控件達到這一目的。 (3)現(xiàn)有服務器控件(或其組合)均不符合應用的需要。對于這種情況,能夠通過從基類派生的方式來創(chuàng)建自定義服務器控件。 ASP.NET 2.0提供了多種服務器控件。根據(jù)服務器控件定義方式,可分為以下3種類型
28、:HTML服務器控件、ASP.NET標準服務器控件和自定義服務器控件。 2.1.1.2 HTML服務器控件 HTML 服務器控件派生自名字空間System.Web.UI.HtmlControls。他們由普通HTML控件(指HTML語言已定義的控件,例 如,Button、Input等)轉換而來,其呈現(xiàn)的輸出,基本上和普通HTML控件一致。默認情況下,服務器端很難控制Web頁面上的普通HTML控 件,但是,通過將普通HTML控件轉換為HTML服務器控件的方法,研發(fā)人員則能夠輕而易舉對其進行編程控制。將普通HTML控件轉換為HTML服務器控件方法比較簡單。一般情況下,通過兩個步驟完成轉換:
29、(1)在普通HTML控件特性中添加Runat="Server"屬性; (2)配置ID屬性。通過轉換,普通HTML控件的相關屬性、事件、方法等將全部映射到HTML服務器控件中,由此,通過編程即可在頁面處理過程中引用并控制該HTML服務器控件。 HTML服務器控件具備以下幾個重要特點: (1)可在服務器上使用面向對象技術對其進行編程控制,這為編程研發(fā)提供了便利。 (2)自動維護視圖狀態(tài)。在頁面窗體到服務器端往返期間,用戶在HTML服務器控件中輸入的值將在頁面回傳中自動維護。 (3)和驗證控件進行交互,便于驗證用戶是否在控件輸入了適當?shù)男畔ⅰ? (4)允許在HTML服務器控件中自定義屬性。
30、研發(fā)人員能夠將任何需要的屬性添加到HTML服務器控件的屬性集中,頁框架將讀取并呈現(xiàn)他們而不更改其他任何功能。 2.1.1.3 ASP.NET標準服務器控件 ASP.NET 標準服務器控件均在名字空間System.Web.UI.WebControls中定義。所謂"標準"是指這類服務器控件內置于ASP.NET 2.0框架中,是預先定義的。這類控件并不一對一映射到HTML服務器控件,他們比HTML服務器控件具備更加豐富的功能,并且更加抽象。按照控件所提供的功能,ASP.NET標準服務器控件可分為以下6種類型: (1)標準控件:主要是指傳統(tǒng)的Web窗體控件,例如TextBox、Button、P
31、anel等控件。他們有一組標準化的屬性、事件和方法,因此能夠使研發(fā)工作變得簡單易行。 (2) 數(shù)據(jù)控件:該類控件可細分為兩種類型:數(shù)據(jù)源控件和數(shù)據(jù)綁定控件。數(shù)據(jù)源控件主要實現(xiàn)數(shù)據(jù)源連接SQL語句/存儲過程執(zhí)行,返回數(shù)據(jù)集合等功能。具體包括SqlDataSource、AccessDataSource、XmlDataSource、SiteMapDataSource、 ObjectDataSource等。數(shù)據(jù)綁定控件包括Repeater、DataList、GridView、DetailsView、 FormView等。這類控件主要實現(xiàn)數(shù)據(jù)顯示、提供編輯、刪除等相關用戶界面等。通常情況下,首先,需要
32、使用數(shù)據(jù)源控件連接數(shù)據(jù)庫,并返回數(shù)據(jù)集合,然后,利用數(shù)據(jù)綁定控件實現(xiàn)數(shù)據(jù)顯示、更新、刪除等功能。由于Visual Studio 2005設計時的強大支持下,研發(fā)人員能夠快速實現(xiàn)以上功能,甚至無需編寫一行代碼。 (3) 驗證控件:他們是一組特別的控件,控件中包含驗證邏輯以測試用戶輸入。具體包括:RequiredFieldValidator、RangeValiedator、RegularExpression Validator、CompareValidator等等。研發(fā)人員能夠將驗證控 件附加到輸入控件,測試用戶對該輸入控件輸入的內容。驗證控件可用于檢查輸入字段,對照字符的特定值或模式進行測試,
33、其目的是驗證某個值是否在限定范圍之 內或其他邏輯。 (4)站點導航控件:該類控件可和站點導航數(shù)據(jù)結合,實現(xiàn)站點導航功能。具體包括:Menu、SiteMapPath、TreeView。對于大型站點,站點導航控件都有著廣泛應用前景。 (5)WebParts 控件:Web部件是一項很了不起的功能,利用他能夠創(chuàng)建具備高度個性化特征的Web應用程式。實現(xiàn)Web部件功能需要WebParts控件支 持,ASP.NET 2.0提供了以下相關控件,例如WebPartManager、WebPartZone、EditorZone、CatalogZone、 PageCatalogPart、AppearanceEd
34、itorPart等等。 (6)登錄控件:這類控件可快速實現(xiàn)用戶登錄及相關功能,例如,顯示登錄狀態(tài)、密碼恢復、創(chuàng)建新用戶等。具體包括:LoginView、Login、CreateUserWizard、LoginStatus等等。 ASP.NET標準服務器控件由于是官方提供,因此,從系統(tǒng)內部就提供了對他們的強大支持。對于研發(fā)人員而言,這些控件是構建Web應用程式的主力軍。 享有工作室-為您提供最優(yōu)秀的計算機畢業(yè)設計論文解決方案 客服QQ:810354974/844511071/465729264 2.2 C#.NET概述 C#是一種語言,.NET是一種平臺。 C#(讀做 "C
35、sharp",中文譯音暫時沒有.專業(yè)人士一般讀"C sharp",現(xiàn)在很多非專業(yè)一般讀"C井"。C#是微軟公司發(fā)布的一種面向對象的、運行于.NET Framework之上的高級程序設計語言。并定于在微軟職業(yè)開發(fā)者論壇(PDC)上登臺亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。它借鑒了Delphi 的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司.NETwindows網絡框架的主角。 C# 語法表現(xiàn)力強,只有不到 90 個關鍵字,而
36、且簡單易學。C# 的大括號語法使任何熟悉 C、C++ 或 Java 的人都可以立即上手。了解上述任何一種語言的開發(fā)人員通常在很短的時間內就可以開始使用 C# 高效地工作。 語法簡化了 C++ 的諸多復雜性,同時提供了很多強大的功能,例如可為空的值類型、枚舉、委托、 C# 源文件可以定義任意數(shù)量的類、結構、接口和事件。 Microsoft.NET 是 Microsoft XML Web services 平臺。 XML Web services 允許應用程序通過 Internet 進行通訊和共享數(shù)據(jù),而不管所采用的是哪種操作系統(tǒng)、設備或編程語言。Microsoft .
37、NET 平臺提供創(chuàng)建 XML Web services 并將這些服務集成在一起之所需。 Web Services是.NET的核心技術。Web services是一個開放的標準,和HTTP、 XML、SOAP一樣。他們是一個工業(yè)標準而非微軟標準,WS-I是為了促進Web Services互通性的聯(lián)盟組織,最初是由IBM和微軟所發(fā)起,其它的成員包括BEA System、惠普計算機(HP)、甲骨文(Oracle)、英特爾(Intel)和SUN 計算機(Sun Microsystem)。如今網絡上存在的大多Web services其實沒有使用.NET構架,Web services具有互操作屬性,你同
38、樣可以使用Windows開發(fā)客戶端來調用運行于Linux上面的Web services的方法。 Microsoft提供了最佳的服務器構架—Microsoft Windows Server System—便于發(fā)布、配置、管理、編排Web Services。為了滿足分布式計算的需要微軟構造了一系列的服務器系統(tǒng),這些內建安全技術的系統(tǒng)全部支持XML,這樣加速了系統(tǒng)、應用程序以及同樣使用Web Services的伙伴應用之間的集成。 .NET Framework 的另一個主要組件是類庫,它是一個綜合性的面向對象的可重用類型集合,您可以使用它開發(fā)多種應用程序,這些應用程序包括傳統(tǒng)的命令行或圖形用戶界
39、面 (GUI) 應用程序,也包括基于 C#.NET 所提供的最新創(chuàng)新的應用程序(如 Web 窗體和 XML Web Services)。 C#.NET 是使開發(fā)人員能夠使用 .NET Framework 開發(fā)基于 Web 的應用程序的宿主環(huán)境。但是,C#.NET 不止是一個運行庫宿主;它是使用托管代碼開發(fā)網站和通過 Internet 分布的對象的完整結構。Web 窗體和 XML Web Services 都將 IIS 和 C#.NET 用作應用程序的發(fā)布機制,并且兩者在 .NET Framework 中都具有支持類集合。 2.2.1 C#.NET的主要功能與特點 C#.NET是服務器端
40、的腳本執(zhí)行環(huán)境,可用來產生和執(zhí)行動態(tài)的高性能的WEB服務器程序。當用戶使用瀏覽器請求ASPX主頁時,WEB服務器響應,調用ASP引擎來執(zhí)行ASPX文件,并解釋其中的腳本語言(JScript 或VCScript),通過SQLBC連接數(shù)據(jù)庫,由數(shù)據(jù)庫訪問組件ADO(ActiveX Data Objects)完成數(shù)據(jù)庫操作,最后ASP生成包含有數(shù)據(jù)查詢結果的HTML主頁返回用戶端顯示。由于ASPX在服務器端運行,運行結果以HTML主頁形式返回用戶瀏覽器,因而ASPX源程序不會泄密,增加了系統(tǒng)的安全保密性。此外,ASPX是面向對象的腳本環(huán)境,用戶可自行增加ActiveX組件來擴充其功能,拓展應用范圍。
41、 目前C#.NET可運行在三種環(huán)境下。 1) WINDOWS NT server 4.0運行IIS 3.0(Internet Information Server)以上。 2) WINDOWS NT workstation 4.0運行Peer Web Server 3.0以上。 3) WINDOWS 95/98運行PWS(Personal Web Server)。 4) WINDOWS XP/VISTA 其中以NT server上的IIS功能最強,提供了對C#.NET的全面支持,是創(chuàng)建高速、穩(wěn)定的ASPX主頁的最佳選擇。 C#.NET提供了六個內建對象,供用戶直接調用: (1)
42、 Application對象:負責管理所有會話信息,可用來在指定的應用程序的所有用戶之間共享信息。 (2) Session對象:存貯特定用戶的會話信息,只被該用戶訪問,當用戶在不同WEB頁面跳轉時,Session中的變量在用戶整個會話過程中一直保存。Session對象需cookie支持。 (3) Request對象:從用戶端取得信息傳遞給服務器,是ASPX讀取用戶輸入的主要方法。 享有工作室-為您提供最優(yōu)秀的計算機畢業(yè)設計論文解決方案 客服QQ:810354974/844511071/465729264 (4) Response對象:服務器將輸出內容發(fā)送到用戶端。 (5) Se
43、rver對象:提供對服務器有關方法和屬性的訪問。 (6) Object Context對象:IIS 4.0新增的對象,用來進行事務處理。此項功能需得到MTS(Microsoft Transcation Server)管理的支持。 此外,還可安裝Myinfo、Counters、Content Rotator、Page Count等組件,用戶也可自行編制Actiive組件,以提高系統(tǒng)的實用性。 WWW上很重要的應用是訪問WEB數(shù)據(jù)庫,用ASP訪問WEB數(shù)據(jù)庫時,必須使用ADO.NET組件,ADO.NET是ASPX內置的ActiveX服務器組件(ActiveX Server Component
44、),通過在WEB服務器上設置ODBC和OLEDB可連接多種數(shù)據(jù)庫:如SYBASE、ORACLE、INFORMIX、SQL SERVER、ACCESS、VFP等,是對目前微軟所支持的數(shù)據(jù)庫進行操作的最有效和最簡單直接的方法。 ADO.NET組件主要提供了以下七個對象和四個集合來訪問數(shù)據(jù)庫。 (1) Connection對象:建立與后臺數(shù)據(jù)庫的連接。 (2) Command對象:執(zhí)行SQL指令,訪問數(shù)據(jù)庫。 (3) Parameters對象和Parameters集合:為Command對象提供數(shù)據(jù)和參數(shù)。 (4) RecordSet對象:存放訪問數(shù)據(jù)庫后的數(shù)據(jù)信息,是最經常使用的對象。
45、(5) Field對象和Field集合:提供對RecordSet中當前記錄的各個字段進行訪問的功能。 (6) Property對象和Properties集合:提供有關信息,供Connection、Command、RecordSet、Field對象使用。 (7) Error對象和Errors集合:提供訪問數(shù)據(jù)庫時的錯誤信息。 在ASPX中,使用ADO.NET組件訪問后臺數(shù)據(jù)庫,可通過以下步驟進行: 1. 定義數(shù)據(jù)源 在WEB服務器上打開“控制面板”,選中“ODBC”,在“系統(tǒng)DSN”下選“添加”,選定你希望的數(shù)據(jù)庫種類、名稱、位置等。本文定義“SQL SERVER”,數(shù)據(jù)源為“HT”,
46、數(shù)據(jù)庫名稱為“HTDATA”,腳本語言采用Jscript。 2. 使用ADO.NET組件查詢WEB數(shù)據(jù)庫 1) 調用Server.CreateObject方法取得“ADODB.Connection”的實例,再使用Open方法打開數(shù)據(jù)庫: conn = Server.CreateObject(“ADODB.Connection”); conn.Open(“HT”); 2) 指定要執(zhí)行的SQL命令 連接數(shù)據(jù)庫后,可對數(shù)據(jù)庫操作,如查詢,修改,刪除等,這些都是通過SQL指令來完成的,如要在數(shù)據(jù)表signaltab中查詢代碼中含有“X”的記錄 sqlStr = “select * fro
47、m signaltab where code like ‘%X%’” rs = conn.Execute(sqlStr); 3) 使用RecordSet屬性和方法,并顯示結果 為了更精確地跟蹤數(shù)據(jù),要用RecordSet組件創(chuàng)建包含數(shù)據(jù)的游標,游標就是儲存在內存中的數(shù)據(jù)。 rs = Server.CreateObject(“ADODB.RecordSet”); rs.Open(sqlStr,conn,1,A); 注:A=1讀取 A=3 新增、修改、刪除 在RecordSet組件中,常用的屬性和方法有: rs.Fields.Count: RecordSet對象的字段數(shù)。 rs
48、(i).Name: 第i個字段的名稱,i為0至rs.Fields.Count-1 rs(i): 第i個字段的數(shù)據(jù),i為0至rs.Fields.Count-1 rs("字段名"): 指定字段的數(shù)據(jù)。 rs.Record.Count:游標中的數(shù)據(jù)記錄總數(shù)。 rs.EOF: 是否最后一條記錄。 rs.MoveFirst: 指向第一條記錄。 rs.MoveLast: 指向最后一條記錄。 rs.MovePrev: 指向上一條記錄。 rs.MoveNext: 指向下一條記錄。 rs.GetRows: 將數(shù)據(jù)放入數(shù)組中。 rs.Properties.Count:ADO.NET的Resul
49、tSet或Connection的屬性個數(shù)。 rs.Properties(item).Name:ADO.NET的ResultSet或Connection的名稱。 rs.Properties: ADO.NET的ResultSet或Connection的值。 rs.close(): 關閉連接。 4) 關閉數(shù)據(jù)庫 conn.close() 2.2.2 查詢數(shù)據(jù)庫舉例 下面這用Admin訪問SQL SERVER數(shù)據(jù)庫的BBS表來說明。 享有工作室-為您提供最優(yōu)秀的計算機畢業(yè)設計論文解決方案 客服QQ:810354974/844511071/465729264 下面的代碼是管理員管
50、理留言板的頁面的后臺代碼: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.
51、Data.SqlClient; public partial class Admin_LinkAdmin : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!this.IsPostBack) { if (Session["UserName"] == null) { Response.Redirect("erro_Amin.a
52、spx"); } Else { this.lb_to_name.Text = "歡迎您:" Session["UserName"].ToString(); } this.bindgridview(); } } //定義一個綁定到gridview的方法,實現(xiàn)分頁功能! public object bindgridview() { SqlConnection con = DBAcces
53、s.createsqlcon(); con.Open(); //試用sqldataadapter+set來實現(xiàn)數(shù)據(jù)源的綁定,實現(xiàn)gridview分頁功能。 SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = new SqlCommand("select * from BBS", con); DataSet ds = new DataSet(); sda.Fill(ds, "BBBS");
54、 this.GridView1.DataSource = ds.Tables["BBBS"];
// 對應行的主鍵標識!
GridView1.DataKeyNames = new string[] { "ID"};
this.GridView1.DataBind();
return ds;
}
protected void lbt_exit_Click(object sender, EventArgs e)
{ //
Response.Write(" 55、t language=javascript>window.close();");
}
protected void GridView1_PageIndexChanging1(object sender, GridViewPageEvent Args e)
{
this.GridView1.PageIndex = e.NewPageIndex;
this.GridView1.DataSource = bindgridview();
this.GridView1.DataBind();
}
prote 56、cted void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor=#58baf0");
e.Row.Attributes.Add(" 57、onmouseout","this.style.backgroundColor=c");
}
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEvent Args e)
{
string sindex =Convert.ToString ( GridView1.DataKeys[e.RowIndex].Value);
SqlConnection con = DBAccess.createsqlco 58、n();
SqlCommand cmd = new SqlCommand("delete from BBS where ID="+sindex+"", con);
con.Open();
cmd.ExecuteNonQuery();
this.bindgridview();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
this.GridView1. 59、EditIndex = e.NewEditIndex;
this.bindgridview();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancel Edit Event Args e)
{
this.GridView1.EditIndex = -1;
this.bindgridview();
}
protected void GridView1_RowUpdating(object sender, Gr 60、idViewUpdateEventArgs e)
{
享有工作室-為您提供最優(yōu)秀的計算機畢業(yè)設計論文解決方案 客服QQ:810354974/844511071/465729264
SqlConnection con = DBAccess.createsqlcon();
con.Open();
SqlCommand cmd = new SqlCommand("update BBS set Adminre=" +((TextBox)(this.GridView1.Rows[e.RowIndex].Cells[3].Contr 61、ols[0])).Text.ToString().Trim() + "where ID="+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "", con);
cmd.ExecuteNonQuery();
con.Close();
GridView1.EditIndex = -1;
this.bindgridview();
}
}
2.3 數(shù)據(jù)庫技術
2.3.1 數(shù)據(jù)庫簡介
SQL Server 2008 是 Microsoft .NET E 62、nterprise Server 的數(shù)據(jù)管理與分析中樞。SQL Server 2008 包括加速從概念到最后交付開發(fā)過程的工具。
集成和可擴展的分析服務。有了 SQL Server 2008,您可以建立帶有集成工具的端到端分析解決方案,從數(shù)據(jù)創(chuàng)造價值。此外,還可以根據(jù)分析結果自動驅動商業(yè)過程以及從最復雜的計算靈活地檢索自定義結果集。
快速開發(fā)、調試和數(shù)據(jù)轉換。SQL Server 2008 帶有交互式調節(jié)和調試查詢、從任何數(shù)據(jù)源快速移動和轉化數(shù)據(jù)、以及按 Transact-SQL 方式定義和使用函數(shù)等功能。您可以從任意 Visual Studio 工具以可視化方式設計和編寫數(shù)據(jù)庫應用程序。 63、
簡化的管理和調節(jié)。使用 SQL Server 2008,您可以很容易地在企業(yè)資源旁邊集中管理數(shù)據(jù)庫??梢栽诒3致?lián)機的同時輕松地在計算機間或實例間移動和復制數(shù)據(jù)庫。
數(shù)據(jù)庫(Database)是與特定主題或用途相關的數(shù)據(jù)和對象的集合,用于搜索、排序和重新組織數(shù)據(jù)。數(shù)據(jù)庫存儲在文件中。SQL Server數(shù)據(jù)庫可以包含表、視圖、存儲過程、觸發(fā)器和數(shù)據(jù)關系圖,還可以包含用戶、角色、規(guī)則、默認值、用戶定義的數(shù)據(jù)類型和函數(shù)以及全文目。
2.3.2 SQL Server 2008數(shù)據(jù)庫的常用命令
(1)數(shù)據(jù)記錄篩選:
sql="select*from數(shù)據(jù)表where字段名=字段值orderby 64、字段名[desc]"
sql="select*from數(shù)據(jù)表where字段名like%字段值%orderby字段名[desc]"
sql="selecttop10*from數(shù)據(jù)表where字段名orderby字段名[desc]"
sql="select*from數(shù)據(jù)表where字段名in(值1,值2,值 3)"
sql="select*from數(shù)據(jù)表where字段名between值1and值2“
(2)更新數(shù)據(jù)記錄:
sql="update數(shù)據(jù)表set字段名=字段值where條件表達式"
sql="update數(shù)據(jù)表set字段1=值1,字段2=值2……字段n=值n where條件 65、表達式
(3)刪除數(shù)據(jù)記錄:
sql="delete from數(shù)據(jù)表where條件表達式"
sql="delete from數(shù)據(jù)表"(將數(shù)據(jù)表所有記錄刪除)
(4)添加數(shù)據(jù)記錄:
sql="insertinto數(shù)據(jù)表(字段1,字段2,字段3…)values(值1,值2,值3…)"
sql="insertinto目標數(shù)據(jù)表select*from源數(shù)據(jù)表"(把源數(shù)據(jù)表的記錄添加到目標數(shù)據(jù)表)
(5)數(shù)據(jù)記錄統(tǒng)計函數(shù):
AVG(字段名)得出一個表格欄平均值
COUNT(*字段名)對數(shù)據(jù)行數(shù)的統(tǒng)計或對某一欄有值的數(shù)據(jù)行數(shù)統(tǒng)計
MAX(字段名)取得一個表格欄最大的值
MIN(字段名 66、)取得一個表格欄最小的值
SUM(字段名)把數(shù)據(jù)欄的值相加
引用以上函數(shù)的方法:
sql="select sum(字段名)as別名from數(shù)據(jù)表where條件表達式"
set rs=conn.excute(sql)
用rs("別名")獲取統(tǒng)的計值,其它函數(shù)運用同上。
(5)數(shù)據(jù)表的建立和刪除:
CREATETABLE數(shù)據(jù)表名稱(字段1類型1(長度),字段2類型2(長度)……)
DROPTABLE數(shù)據(jù)表名稱(永久性刪除一個數(shù)據(jù)表)
4.記錄集對象的方法:
rs.movenext將記錄指針從當前的位置向下移一行
rs.moveprevious將記錄指針從當前的位置向上移一行
rs.movefirst將記錄指針移到數(shù)據(jù)表第一行
rs.movelast將記錄指針移到數(shù)據(jù)表最后一行
享有工作室-為您提供最優(yōu)秀的計算機畢業(yè)設計論文解決方案 客服QQ:810354974/844511071/465729264
rs.absoluteposition=N將記錄指針移到數(shù)據(jù)表第N行
rs.absolutepage=N將記錄指針
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。