畢業(yè)設(shè)計(jì)(論文)ASP.NET在線課件管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
《畢業(yè)設(shè)計(jì)(論文)ASP.NET在線課件管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)》由會(huì)員分享,可在線閱讀,更多相關(guān)《畢業(yè)設(shè)計(jì)(論文)ASP.NET在線課件管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(83頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、在線課件管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 【摘要】在資訊和信息越來(lái)越重要的時(shí)代,精彩的網(wǎng)絡(luò)在悄悄改變著人們的工作、生活和學(xué)習(xí)的理念?;ヂ?lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道。網(wǎng)絡(luò)上發(fā)布信息主要是通過(guò)網(wǎng)站來(lái)實(shí)現(xiàn)的,獲取信息也是要在網(wǎng)絡(luò)中按照一定的檢索方式將所需要的信息從網(wǎng)站上下載下來(lái)。本設(shè)計(jì)所開(kāi)發(fā)的在線課件管理系統(tǒng),能為同學(xué)們提供一個(gè)更加方便分享課件的平臺(tái),達(dá)到讓同學(xué)們能隨時(shí)掌握課件的更新和分享情況,從而使得同學(xué)們能更快掌握課件信息。 這次的畢業(yè)設(shè)計(jì)使用了微軟ASP.NET的來(lái)實(shí)現(xiàn)網(wǎng)站,網(wǎng)站后臺(tái)的編程語(yǔ)言是C#.NET來(lái)實(shí)現(xiàn)功能的,同時(shí)也使用到微軟的SQL2008數(shù)據(jù)庫(kù)實(shí)現(xiàn)數(shù)據(jù)的保存功能。希望這
2、樣能提高網(wǎng)站的工作的效率。 【關(guān)鍵詞】在線;互聯(lián)網(wǎng);課件管理系統(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)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案 客服QQ:810354974/8445
4、11071/465729264 目 錄 第一章 引 言 1 1.1在線課件管理系統(tǒng)開(kāi)發(fā)簡(jiǎn)介 1 1.2 本課題的研究意義 3 1.3主要研究工作 4 第二章 基礎(chǔ)知識(shí)介紹 5 2.1 ASP.NET概述 5 2.1.1 ASP.NET的主要功能與特點(diǎn) 6 2.1.1.1 Web服務(wù)器控件簡(jiǎn)介 6 2.1.1.2 HTML服務(wù)器控件 7 2.1.1.3 ASP.NET標(biāo)準(zhǔn)服務(wù)器控件 7 2.2 C#.NET概述 9 2.2.1 C#.NET的主要功能與特點(diǎn) 10 2.2.2 查詢數(shù)據(jù)庫(kù)舉例 12 2.3 數(shù)據(jù)庫(kù)技術(shù) 15 2.3.1 數(shù)據(jù)庫(kù)簡(jiǎn)介 15
5、 2.3.2 SQL Server 2008數(shù)據(jù)庫(kù)的常用命令 15 2.4 IIS的配置 17 2.4.1 IIS概述 17 2.4.2 IIS簡(jiǎn)單配置 17 2.5 本章小結(jié) 19 第三章 具體設(shè)計(jì) 20 3.1 總體設(shè)計(jì)思路 20 3.1.1 具體設(shè)計(jì)思路 20 3.1.2 網(wǎng)站的連接結(jié)構(gòu) 22 3.2 用戶管理 23 3.3 網(wǎng)站結(jié)構(gòu)設(shè)計(jì) 23 3.3.1 系統(tǒng)功能分析與設(shè)計(jì) 23 3.3.2 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì) 24 3.4 本章小結(jié) 25 第四章 網(wǎng)站設(shè)計(jì)的實(shí)現(xiàn) 27 4.1 動(dòng)態(tài)網(wǎng)頁(yè)各部分的實(shí)現(xiàn) 27 4.2 網(wǎng)頁(yè)中的ASPX代碼 27 4.3
6、本章小結(jié) 47 第五章 性能測(cè)試與分析 48 5.1 啟動(dòng)在線課件管理系統(tǒng) 48 5.2 運(yùn)行各個(gè)模塊進(jìn)行調(diào)試 48 5.3 對(duì)調(diào)試結(jié)果進(jìn)行分析 48 結(jié) 論 53 致 謝 54 參考文獻(xiàn) 55 第一章 引 言 本世紀(jì)是信息時(shí)代,高等教育更是信息時(shí)代的擔(dān)當(dāng)者。校園的網(wǎng)絡(luò)信息化建設(shè)已基本實(shí)現(xiàn)從服務(wù)器、網(wǎng)絡(luò)等硬件環(huán)境,輻射教學(xué)、管理等應(yīng)用軟件系統(tǒng)和網(wǎng)站。高等學(xué)校網(wǎng)絡(luò)化的建設(shè)是十分必要的一項(xiàng)工作,目的是通過(guò)建設(shè)校園網(wǎng)絡(luò),把網(wǎng)絡(luò)資源切實(shí)有效的應(yīng)用到教育教學(xué)中,提高教學(xué)效率和數(shù)學(xué)效果。學(xué)校網(wǎng)絡(luò)的使用,改變了教師的教學(xué)方式,也改變了學(xué)生的學(xué)習(xí)方式。充分利用網(wǎng)絡(luò)資源條件,使
7、其更好地為教學(xué)服務(wù)。同時(shí)隨著社會(huì)經(jīng)濟(jì)和Web技術(shù)的發(fā)展,人們不再滿足于僅能瀏覽信息的靜態(tài)網(wǎng)頁(yè),更多的時(shí)候需要能與同時(shí)上網(wǎng)的互聯(lián)網(wǎng)用戶進(jìn)行交流和發(fā)表自己的意見(jiàn)見(jiàn)解,這樣,能提供后臺(tái)數(shù)據(jù)庫(kù)的管理和控制等服務(wù)的動(dòng)態(tài)網(wǎng)站有了誕生的必要。近年來(lái),隨著互聯(lián)網(wǎng)在中國(guó)的迅速發(fā)展,這一利用網(wǎng)絡(luò)信息進(jìn)行交流資料和信息的方式得到迅速發(fā)展。 在校園中通過(guò)網(wǎng)絡(luò)的信息技術(shù),可以使教育教學(xué)資源自由共享,優(yōu)化教育教學(xué)方式,同時(shí)還可以培養(yǎng)和提高學(xué)生獲取各種信息的素養(yǎng),這樣可以信息化網(wǎng)絡(luò)校園環(huán)境,從而達(dá)到實(shí)現(xiàn)教育信息化,這是信息時(shí)代學(xué)習(xí)方式改變的新理念。 在線課件管理系統(tǒng)在一定的程度上可以實(shí)現(xiàn)老師學(xué)習(xí)資料與同學(xué)的同步,不論
8、是學(xué)生是否在校園,在任何時(shí)間只要可以上網(wǎng)就可以的到老師的第一手學(xué)習(xí)資料。網(wǎng)站通過(guò)不同成員的登錄,也同樣可以很好的規(guī)范課件管理和存儲(chǔ),使得課件的管理有條不紊,同學(xué)們也能準(zhǔn)確地找到所需,還能降低教師的工作量,提高同學(xué)們的學(xué)習(xí)效率,優(yōu)化了學(xué)習(xí)環(huán)境。 1.1在線課件管理系統(tǒng)開(kāi)發(fā)簡(jiǎn)介 ASP.NET是一種動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)的應(yīng)用程序,是微軟公司推出的一種全新的基于B/S模型的技術(shù),并有集成Visual Studio 2010的支持。ASP.net是把基于通用語(yǔ)言的程序在服務(wù)器上運(yùn)行。不像以前的ASP即時(shí)解釋程序,而是將程序在服務(wù)器端首次運(yùn)行時(shí)進(jìn)行編譯,這樣的執(zhí)行效果,當(dāng)然比一條一條的解釋強(qiáng)很多。因?yàn)锳SP
9、.NET是基于通用語(yǔ)言的編譯運(yùn)行的程序,所以它的強(qiáng)大性和適應(yīng)性,可以使它運(yùn)行在Web應(yīng)用軟件開(kāi)發(fā)者的幾乎全部的平臺(tái)上。通用語(yǔ)言的基本庫(kù),消息機(jī)制,數(shù)據(jù)接口的處理都能無(wú)縫的整合到ASP.NET的Web應(yīng)用中。ASP.NET同時(shí)也是 language-independent語(yǔ)言獨(dú)立化的,所以,使用者可以選擇一種最適合你的語(yǔ)言來(lái)編寫(xiě)你的程序,或者把你的程序用很多種語(yǔ)言來(lái)寫(xiě),現(xiàn)在已經(jīng) 支持的有C#(C++和Java的結(jié)合體),VB,Jscript。將來(lái)這樣的多種程序語(yǔ)言協(xié)同工作的能力保護(hù)您現(xiàn)在的基于COM+開(kāi)發(fā)的程序,能夠完整的移植向ASP.NET 的平臺(tái)下。應(yīng)為這次的網(wǎng)站后臺(tái)程序是用C#.
10、NET來(lái)開(kāi)發(fā)的,所以以下對(duì)C#.NET進(jìn)行簡(jiǎn)介。 C#.NET使用一種字符基礎(chǔ)的,分級(jí)的配置系統(tǒng),使你服務(wù)器環(huán)境和應(yīng)用程序的設(shè)置更加簡(jiǎn)單。因?yàn)榕渲眯畔⒍急4嬖诤?jiǎn)單文本中,新的設(shè)置有可能都不需要啟動(dòng)本地的管理員工具就可以實(shí)現(xiàn)。這種被稱為"Zero Local Administration"的哲學(xué)觀念使C#.NET的基于應(yīng)用的開(kāi)發(fā)更加具體,和快捷。一個(gè)C#.NET的應(yīng)用程序在一臺(tái)服務(wù)器系統(tǒng)的安裝只需要簡(jiǎn)單的拷貝一些必須得文件,不需要系統(tǒng)的重新啟動(dòng),一切就是這么簡(jiǎn)單。多處理器環(huán)境的可靠性 C#.NET已經(jīng)被刻意設(shè)計(jì)成為一種可以用于多處理器的開(kāi)發(fā)工具,它在多處理器的環(huán)境下用特殊的無(wú)縫連接技術(shù),將很大
11、的提高運(yùn)行速度。即使你現(xiàn)在的C#.NET應(yīng)用軟件是為一個(gè)處理器開(kāi)發(fā)的,將來(lái)多處理器運(yùn)行時(shí)不需要任何改變都能提高他們的效能,但現(xiàn)在的ASP確做不到這一點(diǎn)。自定義性和可擴(kuò)展性 C#.NET設(shè)計(jì)時(shí)考慮了讓網(wǎng)站開(kāi)發(fā)人員可以在自己的代碼中自己定義"plug-in"的模塊。這與原來(lái)的包含關(guān)系不同,C#.NET可以加入自己定義的如何組件。網(wǎng)站程序的開(kāi)發(fā)從來(lái)沒(méi)有這么簡(jiǎn)單過(guò)。安全性基于Windows認(rèn)證技術(shù)和每應(yīng)用程序配置,你可以確性你的原程序時(shí)絕對(duì)安全的。 C#.NET 的語(yǔ)法在很大程度上與 ASP 兼容,同時(shí)它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護(hù)??梢酝?/p>
12、過(guò)在現(xiàn)有 ASP 應(yīng)用程序中逐漸添加 C#.NET 功能,隨時(shí)增強(qiáng) ASP 應(yīng)用程序的功能。 C#.NET 是一個(gè)已編譯的、基于 .NET 的環(huán)境,把基于通用語(yǔ)言的程序在服務(wù)器上運(yùn)行。將程序在服務(wù)器端首次運(yùn)行時(shí)進(jìn)行編譯,比ASP即時(shí)解釋程序速度上要快很多.而且是可以用任何與 .NET 兼容的語(yǔ)言(包括 Visual Basic .NET、C# 和 JScript .NET.)創(chuàng)作應(yīng)用程序。 另外,任何 C#.NET 應(yīng)用程序都可以使用整個(gè) .NET Framework。開(kāi)發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點(diǎn),其中包括托管的公共語(yǔ)言運(yùn)行庫(kù)環(huán)境、類型安全、繼承等等。 C#.NET 可以無(wú)縫地與 W
13、YSIWYG HTML 編輯器和其他編程工具(包括 Microsoft Visual Studio .NET)一起工作。這不僅使得 Web 開(kāi)發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點(diǎn),包括開(kāi)發(fā)人員可以用來(lái)將服務(wù)器控件拖放到 Web 頁(yè)的 GUI 和完全集成的調(diào)試支持。 當(dāng)創(chuàng)建 C#.NET 應(yīng)用程序時(shí),開(kāi)發(fā)人員可以使用 Web 窗體或 XML Web services,或以他們認(rèn)為合適的任何方式進(jìn)行組合。每個(gè)功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗(yàn)證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對(duì)應(yīng)用程序的配置進(jìn)行自定義。 除此之外還有許多動(dòng)態(tài)網(wǎng)站的開(kāi)發(fā)技術(shù),如Java Servlets技
14、術(shù),利用該技術(shù)可以很容易地用Java語(yǔ)言編寫(xiě)交互式的服務(wù)器端代碼。一個(gè)Java Servlets就是一個(gè)基于Java技術(shù)的運(yùn)行在服務(wù)器端的程序(與Applet不同,后者運(yùn)行在瀏覽器端)。開(kāi)發(fā)人員編寫(xiě)這樣的Java Servlets,以接收來(lái)自Web瀏覽器的HTTP請(qǐng)求,動(dòng)態(tài)地生成響應(yīng)(可能需要查詢數(shù)據(jù)庫(kù)來(lái)完成這種請(qǐng)求),然后發(fā)送包含HTML或XML文檔的響應(yīng)到瀏覽器。這種技術(shù)對(duì)于普通的頁(yè)面設(shè)計(jì)者來(lái)說(shuō)要輕易地掌握是很困難的。采用這種方法,整個(gè)網(wǎng)頁(yè)必須都在Java Servlets中制作。如果開(kāi)發(fā)人員或者Web管理人員想要調(diào)整頁(yè)面顯示,就不得不編輯并重新編譯該Java Servlets。太
15、陽(yáng)微系統(tǒng)公司(Sun Microsystems Inc.)在Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)以及開(kāi)發(fā)工具供應(yīng)商間廣泛支持與合作下,整合并平衡了已經(jīng)存在的對(duì)Java編程環(huán)境(例如Java Servlets和JavaBeans)進(jìn)行支持的技術(shù)和工具后產(chǎn)生了一種新的、開(kāi)發(fā)基于Web應(yīng)用程序的方法——JavaServer Pages技術(shù)(JSP)。 所以經(jīng)過(guò)總結(jié),ASP.NET的優(yōu)點(diǎn)可以歸結(jié)為以下幾點(diǎn): (1)能夠在任何Web或應(yīng)用程序服務(wù)器上運(yùn)行; (2)分離了應(yīng)用程序的邏輯和頁(yè)面顯示; (3)能夠進(jìn)行快速的開(kāi)發(fā)和測(cè)試; (4)簡(jiǎn)化了開(kāi)發(fā)基于Web的交互式應(yīng)用
16、程序的過(guò)程 . 1.2 本課題的研究意義 當(dāng)今的社會(huì)是一個(gè)信息爆炸的社會(huì)?;ヂ?lián)網(wǎng)的出現(xiàn)加速了這種信息爆炸的當(dāng)量。導(dǎo)致信息泛濫成災(zāi),嚴(yán)重地阻礙和影響著知識(shí)和信息的傳播。隨著Internet的普及,互聯(lián)網(wǎng)以一股巨大變革力量的面貌出現(xiàn)在商務(wù)關(guān)系領(lǐng)域。其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。 在現(xiàn)在這個(gè)時(shí)代中,網(wǎng)絡(luò)的巨大優(yōu)勢(shì)顯露無(wú)疑:那就是超越信息,將信息轉(zhuǎn)化為知識(shí)。著名的經(jīng)濟(jì)學(xué)家、1972年諾貝爾經(jīng)濟(jì)學(xué)獎(jiǎng)獲得者赫伯特西蒙早在20多年前就指出過(guò):在信息時(shí)代,最稀缺的資源不再是信息本身,而是對(duì)信息的處理能力。傳統(tǒng)的各種網(wǎng)絡(luò)工具(搜索引擎、網(wǎng)上查詢、數(shù)據(jù)挖
17、掘)以及各種軟件工具等,越來(lái)越難以滿足深層次的需要。如何讓信息和知識(shí)通過(guò)互聯(lián)網(wǎng)有序、廣泛、深入地傳播,將零散、隱形的知識(shí)快速轉(zhuǎn)化為具有使用價(jià)值的顯性知識(shí)。這是當(dāng)今社會(huì)最為關(guān)心的問(wèn)題。博客技術(shù)的出現(xiàn)為人們提供了一種全新可能。網(wǎng)絡(luò)開(kāi)始真正凸現(xiàn)無(wú)窮的知識(shí)價(jià)值。 在現(xiàn)在的校園里,網(wǎng)絡(luò)已經(jīng)成為了不可替代的一種工具。其帶來(lái)的效率是不可忽視的。在高校信息化網(wǎng)絡(luò)建設(shè)信息技術(shù)的開(kāi)發(fā)應(yīng)用,以學(xué)習(xí)資源信息化的全面展開(kāi)應(yīng)用為主線,全面創(chuàng)建信息化校園,加強(qiáng)學(xué)校教育資源建設(shè)。微觀上講,高校信息化網(wǎng)絡(luò)建設(shè)包含了計(jì)算機(jī)化、網(wǎng)絡(luò)化、智能化,反映的是信息能力的高度運(yùn)用。具有很強(qiáng)的實(shí)踐性。高校信息化網(wǎng)絡(luò)建設(shè) 與應(yīng)用突出了信息化網(wǎng)
18、絡(luò)的應(yīng)用主題,其最終目的是更好地開(kāi)展并實(shí)現(xiàn)教育信息化、網(wǎng)絡(luò)信息化。 為了適應(yīng)信息網(wǎng)絡(luò)形勢(shì),緊跟時(shí)代潮流,使自己能在新世紀(jì)中運(yùn)用網(wǎng)絡(luò)傳播渠道建立學(xué)習(xí)的新環(huán)境,利用網(wǎng)絡(luò)的方便性提高學(xué)習(xí)效率,讓老師和同學(xué)方便交流,利用網(wǎng)站隨時(shí)在線的特點(diǎn),創(chuàng)建彼此分享學(xué)習(xí)資料的的橋梁。這也是我創(chuàng)建該網(wǎng)站的初衷。 1.3主要研究工作 在線課件管理系統(tǒng)一般來(lái)說(shuō)使用有三大對(duì)象對(duì)象:老師、同學(xué)和系統(tǒng)的管理人員。 在線課件管理系統(tǒng)主要要達(dá)到以下要求:管理員可以看到所有的老師和同學(xué)的信息,并可以添加刪除老師和同學(xué)的信息,而且管理可以把一些出錯(cuò)了或者太舊的課件進(jìn)行刪除,并且也可以上傳課件,同時(shí)還可以修改自己的登錄密碼;而對(duì)
19、于老師角色的要求是:可以上傳課件,和下載課件,可以修改自己的登錄密碼;對(duì)于學(xué)生這個(gè)角色的要求是:可以下載課件,可以修改自己的登錄密碼,可以查看老師的信息。這個(gè)系統(tǒng)因?yàn)榭紤]到僅僅面對(duì)學(xué)校的同學(xué)開(kāi)放,所以必須要登錄后才可以瀏覽網(wǎng)頁(yè),對(duì)于普通的網(wǎng)絡(luò)瀏覽者并不開(kāi)放。對(duì)于安全和維護(hù)的考慮,系統(tǒng)將有一個(gè)后臺(tái)頁(yè)面,僅對(duì)于管理員開(kāi)放。 系統(tǒng)的開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的數(shù)據(jù)庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。 第二章 基礎(chǔ)知識(shí)介紹 2.1 ASP.NET概述 ASP
20、.NET 是一個(gè)統(tǒng)一的 Web 開(kāi)發(fā)模型,它包括您使用盡可能少的代碼生成企業(yè)級(jí) Web 應(yīng)用程序所必需的各種服務(wù)。ASP.NET 作為 .NET Framework 的一部分提供。當(dāng)您編寫(xiě) ASP.NET 應(yīng)用程序的代碼時(shí),可以訪問(wèn) .NET Framework 中的類。您可以使用與公共語(yǔ)言運(yùn)行庫(kù) (CLR) 兼容的任何語(yǔ)言來(lái)編寫(xiě)應(yīng)用程序的代碼,這些語(yǔ)言包括 Microsoft Visual Basic、C#、JScript .NET 和 J#。使用這些語(yǔ)言,可以開(kāi)發(fā)利用公共語(yǔ)言運(yùn)行庫(kù)、類型安全、繼承等方面的優(yōu)點(diǎn)的 ASP.NET 應(yīng)用程序。 ASP.NET 頁(yè)和控件框架是一種編程框架,它在
21、 Web 服務(wù)器上運(yùn)行,可以動(dòng)態(tài)地生成和呈現(xiàn) ASP.NET 網(wǎng)頁(yè)。可以從任何瀏覽器或客戶端設(shè)備請(qǐng)求 ASP.NET 網(wǎng)頁(yè),ASP.NET 會(huì)向請(qǐng)求瀏覽器呈現(xiàn)標(biāo)記(例如 HTML)。通常,您可以對(duì)多個(gè)瀏覽器使用相同的頁(yè),因?yàn)?ASP.NET 會(huì)為發(fā)出請(qǐng)求的瀏覽器呈現(xiàn)適當(dāng)?shù)臉?biāo)記。但是,您可以針對(duì)諸如 Microsoft Internet Explorer 6 的特定瀏覽器設(shè)計(jì) ASP.NET 網(wǎng)頁(yè),并利用該瀏覽器的功能。ASP.NET 支持基于 Web 的設(shè)備(如移動(dòng)電話、手持型計(jì)算機(jī)和個(gè)人數(shù)字助理 (PDA))的移動(dòng)控件。 ASP.NET 網(wǎng)頁(yè)是完全面向?qū)ο蟮?。?ASP.NET 網(wǎng)頁(yè)中,
22、可以使用屬性、方法和事件來(lái)處理 HTML 元素。ASP.NET 頁(yè)框架為響應(yīng)在服務(wù)器上運(yùn)行的代碼中的客戶端事件提供統(tǒng)一的模型,從而使您不必考慮基于 Web 的應(yīng)用程序中固有的客戶端和服務(wù)器隔離的實(shí)現(xiàn)細(xì)節(jié)。該框架還會(huì)在頁(yè)處理生命周期中自動(dòng)維護(hù)頁(yè)及該頁(yè)上控件的狀態(tài)。使用 ASP.NET 頁(yè)和控件框架還可以將常用的 UI 功能封裝成易于使用且可重用的控件??丶恍杈帉?xiě)一次,即可用于許多頁(yè)并集成到 ASP.NET 網(wǎng)頁(yè)中。這些控件在呈現(xiàn)期間放入 ASP.NET 網(wǎng)頁(yè)中。 ASP.NET 頁(yè)和控件框架還提供各種功能,以便可以通過(guò)主題和外觀來(lái)控制網(wǎng)站的整體外觀和感覺(jué)。可以先定義主題和外觀,然后在頁(yè)面級(jí)或
23、控件級(jí)應(yīng)用這些主題和外觀。除了主題外,還可以定義母版頁(yè),以使應(yīng)用程序中的頁(yè)具有一致的布局。一個(gè)母版頁(yè)可以定義您希望應(yīng)用程序中的所有頁(yè)(或一組頁(yè))所具有的布局和標(biāo)準(zhǔn)行為。然后 可以創(chuàng)建包含要顯示的頁(yè)特定內(nèi)容的各個(gè)內(nèi)容頁(yè)。當(dāng)用戶請(qǐng)求內(nèi)容頁(yè)時(shí),這些內(nèi)容頁(yè)與母版頁(yè)合并,產(chǎn)生將母版頁(yè)的布局與內(nèi)容頁(yè)中的內(nèi)容組合在一起的輸出。 在 ASP.NET 網(wǎng)頁(yè)中,用戶界面編程分為兩個(gè)部分:可視組件和邏輯。如果您以前使用過(guò)類似于 Visual Basic 和 Visual C++ 的工具,您將認(rèn)同在頁(yè)的可視部分和頁(yè)后與之交互的代碼之間存在這樣一種劃分。 可視元素由一個(gè)包含靜態(tài)標(biāo)記(例如 HTML 或 ASP.NE
24、T 服務(wù)器控件或兩者)的文件組成。ASP.NET 網(wǎng)頁(yè)用作要顯示的靜態(tài)文本和控件的容器。 ASP.NET 網(wǎng)頁(yè)的邏輯由代碼組成,這些代碼由您創(chuàng)建以與頁(yè)進(jìn)行交互。代碼可以駐留在頁(yè)的 script 塊中或者單獨(dú)的類中。如果代碼在單獨(dú)的類文件中,則該文件稱為“代碼隱藏”文件。 ASP.NET 網(wǎng)頁(yè)編譯為動(dòng)態(tài)鏈接庫(kù) (.dll) 文件。用戶第一次瀏覽到 .aspx 頁(yè)時(shí),ASP.NET 自動(dòng)生成表示該頁(yè)的 .NET 類文件,然后編譯此文件。.dll 文件在服務(wù)器上運(yùn)行,并動(dòng)態(tài)生成頁(yè)的 HTML 輸出。 2.1.1 ASP.NET的主要功能與特點(diǎn) 利用ASP.NET 技術(shù),創(chuàng)建Web動(dòng)態(tài)網(wǎng)站,
25、這需要研發(fā)人員了解并能夠靈活應(yīng)用多種Web研發(fā)技術(shù),例如,CSS樣式表、客戶端 腳本語(yǔ)言、.NET研發(fā)語(yǔ)言、服務(wù)器控件研發(fā)技術(shù),甚至是當(dāng)前最火的AJAX技術(shù)等等。要實(shí)現(xiàn)一些要求的功能,使用這種研發(fā)技術(shù)不是那么困難?,F(xiàn)在就簡(jiǎn)單介紹一下ASP.NET主要功能和一些特點(diǎn),然后再對(duì)創(chuàng)建Web自定義服務(wù)器控件的基礎(chǔ)知識(shí)進(jìn)行一定的介紹。 2.1.1.1 Web服務(wù)器控件簡(jiǎn)介 在ASP.NET 2.0中,Web服務(wù)器控件是指在服務(wù)器上執(zhí)行程式邏輯的組件。這個(gè)組件可能生成一定的用戶界面,也可能不包括用戶界面。每個(gè)服務(wù)器控件都包含一些成員對(duì)象,以便研發(fā)人員調(diào)用。例如:屬性、事件、方法等。 通常情況下,
26、服務(wù)器控件都包含在ASP.NET頁(yè)面中。當(dāng)運(yùn)行頁(yè)面時(shí),.NET執(zhí)行引擎將根據(jù)控件成員對(duì)象和程式邏輯定義完成一定的功能。例如,在客戶端呈 現(xiàn)用戶界面。這時(shí),用戶可和控件發(fā)生交互行為,當(dāng)頁(yè)面被用戶提交時(shí),控件可在服務(wù)器端引發(fā)事件,并由服務(wù)器端根據(jù)相關(guān)事件處理程式來(lái)進(jìn)行事件處理。服務(wù)器 控件是WebForm編程模型的重要元素,他們構(gòu)成了一個(gè)新的、基于控件的表單程式的基礎(chǔ)。通過(guò)這種方式能夠簡(jiǎn)化Web應(yīng)用程式的研發(fā),提高應(yīng)用程式的研發(fā)效率。 服務(wù)器控件的廣泛應(yīng)用,簡(jiǎn)化了應(yīng)用程式的研發(fā),提高了工作效率。那么,何時(shí)應(yīng)創(chuàng)建并使用自定義服務(wù)器控件呢?下面列舉了在三種具體適用情況: (1)某個(gè)現(xiàn)有服務(wù)器控件基
27、本符合應(yīng)用需要,但是,缺少某些特別的功能,這 享有工作室-為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案 客服QQ:810354974/844511071/465729264 時(shí)能夠通過(guò)從現(xiàn)有控件中派生并重寫(xiě)其屬性、方法或事件來(lái)自定義服務(wù)器控件。 (2)需要使用的服務(wù)器控件結(jié)合了兩個(gè)或多個(gè)現(xiàn)有控件的功能,例如,封裝一個(gè)按鈕和一個(gè)文本框的復(fù)合控件。此時(shí)能夠通過(guò)創(chuàng)建服務(wù)器控件達(dá)到這一目的。 (3)現(xiàn)有服務(wù)器控件(或其組合)均不符合應(yīng)用的需要。對(duì)于這種情況,能夠通過(guò)從基類派生的方式來(lái)創(chuàng)建自定義服務(wù)器控件。 ASP.NET 2.0提供了多種服務(wù)器控件。根據(jù)服務(wù)器控件定義方式,可分為以下3種類型
28、:HTML服務(wù)器控件、ASP.NET標(biāo)準(zhǔn)服務(wù)器控件和自定義服務(wù)器控件。 2.1.1.2 HTML服務(wù)器控件 HTML 服務(wù)器控件派生自名字空間System.Web.UI.HtmlControls。他們由普通HTML控件(指HTML語(yǔ)言已定義的控件,例 如,Button、Input等)轉(zhuǎn)換而來(lái),其呈現(xiàn)的輸出,基本上和普通HTML控件一致。默認(rèn)情況下,服務(wù)器端很難控制Web頁(yè)面上的普通HTML控 件,但是,通過(guò)將普通HTML控件轉(zhuǎn)換為HTML服務(wù)器控件的方法,研發(fā)人員則能夠輕而易舉對(duì)其進(jìn)行編程控制。將普通HTML控件轉(zhuǎn)換為HTML服務(wù)器控件方法比較簡(jiǎn)單。一般情況下,通過(guò)兩個(gè)步驟完成轉(zhuǎn)換:
29、(1)在普通HTML控件特性中添加Runat="Server"屬性; (2)配置ID屬性。通過(guò)轉(zhuǎn)換,普通HTML控件的相關(guān)屬性、事件、方法等將全部映射到HTML服務(wù)器控件中,由此,通過(guò)編程即可在頁(yè)面處理過(guò)程中引用并控制該HTML服務(wù)器控件。 HTML服務(wù)器控件具備以下幾個(gè)重要特點(diǎn): (1)可在服務(wù)器上使用面向?qū)ο蠹夹g(shù)對(duì)其進(jìn)行編程控制,這為編程研發(fā)提供了便利。 (2)自動(dòng)維護(hù)視圖狀態(tài)。在頁(yè)面窗體到服務(wù)器端往返期間,用戶在HTML服務(wù)器控件中輸入的值將在頁(yè)面回傳中自動(dòng)維護(hù)。 (3)和驗(yàn)證控件進(jìn)行交互,便于驗(yàn)證用戶是否在控件輸入了適當(dāng)?shù)男畔ⅰ? (4)允許在HTML服務(wù)器控件中自定義屬性。
30、研發(fā)人員能夠?qū)⑷魏涡枰膶傩蕴砑拥紿TML服務(wù)器控件的屬性集中,頁(yè)框架將讀取并呈現(xiàn)他們而不更改其他任何功能。 2.1.1.3 ASP.NET標(biāo)準(zhǔn)服務(wù)器控件 ASP.NET 標(biāo)準(zhǔn)服務(wù)器控件均在名字空間System.Web.UI.WebControls中定義。所謂"標(biāo)準(zhǔn)"是指這類服務(wù)器控件內(nèi)置于ASP.NET 2.0框架中,是預(yù)先定義的。這類控件并不一對(duì)一映射到HTML服務(wù)器控件,他們比HTML服務(wù)器控件具備更加豐富的功能,并且更加抽象。按照控件所提供的功能,ASP.NET標(biāo)準(zhǔn)服務(wù)器控件可分為以下6種類型: (1)標(biāo)準(zhǔn)控件:主要是指?jìng)鹘y(tǒng)的Web窗體控件,例如TextBox、Button、P
31、anel等控件。他們有一組標(biāo)準(zhǔn)化的屬性、事件和方法,因此能夠使研發(fā)工作變得簡(jiǎn)單易行。 (2) 數(shù)據(jù)控件:該類控件可細(xì)分為兩種類型:數(shù)據(jù)源控件和數(shù)據(jù)綁定控件。數(shù)據(jù)源控件主要實(shí)現(xiàn)數(shù)據(jù)源連接SQL語(yǔ)句/存儲(chǔ)過(guò)程執(zhí)行,返回?cái)?shù)據(jù)集合等功能。具體包括SqlDataSource、AccessDataSource、XmlDataSource、SiteMapDataSource、 ObjectDataSource等。數(shù)據(jù)綁定控件包括Repeater、DataList、GridView、DetailsView、 FormView等。這類控件主要實(shí)現(xiàn)數(shù)據(jù)顯示、提供編輯、刪除等相關(guān)用戶界面等。通常情況下,首先,需要
32、使用數(shù)據(jù)源控件連接數(shù)據(jù)庫(kù),并返回?cái)?shù)據(jù)集合,然后,利用數(shù)據(jù)綁定控件實(shí)現(xiàn)數(shù)據(jù)顯示、更新、刪除等功能。由于Visual Studio 2005設(shè)計(jì)時(shí)的強(qiáng)大支持下,研發(fā)人員能夠快速實(shí)現(xiàn)以上功能,甚至無(wú)需編寫(xiě)一行代碼。 (3) 驗(yàn)證控件:他們是一組特別的控件,控件中包含驗(yàn)證邏輯以測(cè)試用戶輸入。具體包括:RequiredFieldValidator、RangeValiedator、RegularExpression Validator、CompareValidator等等。研發(fā)人員能夠?qū)Ⅱ?yàn)證控 件附加到輸入控件,測(cè)試用戶對(duì)該輸入控件輸入的內(nèi)容。驗(yàn)證控件可用于檢查輸入字段,對(duì)照字符的特定值或模式進(jìn)行測(cè)試,
33、其目的是驗(yàn)證某個(gè)值是否在限定范圍之 內(nèi)或其他邏輯。 (4)站點(diǎn)導(dǎo)航控件:該類控件可和站點(diǎn)導(dǎo)航數(shù)據(jù)結(jié)合,實(shí)現(xiàn)站點(diǎn)導(dǎo)航功能。具體包括:Menu、SiteMapPath、TreeView。對(duì)于大型站點(diǎn),站點(diǎn)導(dǎo)航控件都有著廣泛應(yīng)用前景。 (5)WebParts 控件:Web部件是一項(xiàng)很了不起的功能,利用他能夠創(chuàng)建具備高度個(gè)性化特征的Web應(yīng)用程式。實(shí)現(xiàn)Web部件功能需要WebParts控件支 持,ASP.NET 2.0提供了以下相關(guān)控件,例如WebPartManager、WebPartZone、EditorZone、CatalogZone、 PageCatalogPart、AppearanceEd
34、itorPart等等。 (6)登錄控件:這類控件可快速實(shí)現(xiàn)用戶登錄及相關(guān)功能,例如,顯示登錄狀態(tài)、密碼恢復(fù)、創(chuàng)建新用戶等。具體包括:LoginView、Login、CreateUserWizard、LoginStatus等等。 ASP.NET標(biāo)準(zhǔn)服務(wù)器控件由于是官方提供,因此,從系統(tǒng)內(nèi)部就提供了對(duì)他們的強(qiáng)大支持。對(duì)于研發(fā)人員而言,這些控件是構(gòu)建Web應(yīng)用程式的主力軍。 享有工作室-為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案 客服QQ:810354974/844511071/465729264 2.2 C#.NET概述 C#是一種語(yǔ)言,.NET是一種平臺(tái)。 C#(讀做 "C
35、sharp",中文譯音暫時(shí)沒(méi)有.專業(yè)人士一般讀"C sharp",現(xiàn)在很多非專業(yè)一般讀"C井"。C#是微軟公司發(fā)布的一種面向?qū)ο蟮?、運(yùn)行于.NET Framework之上的高級(jí)程序設(shè)計(jì)語(yǔ)言。并定于在微軟職業(yè)開(kāi)發(fā)者論壇(PDC)上登臺(tái)亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來(lái)與Java有著驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語(yǔ)法和編譯成中間代碼再運(yùn)行的過(guò)程。它借鑒了Delphi 的一個(gè)特點(diǎn),與COM(組件對(duì)象模型)是直接集成的,而且它是微軟公司.NETwindows網(wǎng)絡(luò)框架的主角。 C# 語(yǔ)法表現(xiàn)力強(qiáng),只有不到 90 個(gè)關(guān)鍵字,而
36、且簡(jiǎn)單易學(xué)。C# 的大括號(hào)語(yǔ)法使任何熟悉 C、C++ 或 Java 的人都可以立即上手。了解上述任何一種語(yǔ)言的開(kāi)發(fā)人員通常在很短的時(shí)間內(nèi)就可以開(kāi)始使用 C# 高效地工作。 語(yǔ)法簡(jiǎn)化了 C++ 的諸多復(fù)雜性,同時(shí)提供了很多強(qiáng)大的功能,例如可為空的值類型、枚舉、委托、 C# 源文件可以定義任意數(shù)量的類、結(jié)構(gòu)、接口和事件。 Microsoft.NET 是 Microsoft XML Web services 平臺(tái)。 XML Web services 允許應(yīng)用程序通過(guò) Internet 進(jìn)行通訊和共享數(shù)據(jù),而不管所采用的是哪種操作系統(tǒng)、設(shè)備或編程語(yǔ)言。Microsoft .
37、NET 平臺(tái)提供創(chuàng)建 XML Web services 并將這些服務(wù)集成在一起之所需。 Web Services是.NET的核心技術(shù)。Web services是一個(gè)開(kāi)放的標(biāo)準(zhǔn),和HTTP、 XML、SOAP一樣。他們是一個(gè)工業(yè)標(biāo)準(zhǔn)而非微軟標(biāo)準(zhǔn),WS-I是為了促進(jìn)Web Services互通性的聯(lián)盟組織,最初是由IBM和微軟所發(fā)起,其它的成員包括BEA System、惠普計(jì)算機(jī)(HP)、甲骨文(Oracle)、英特爾(Intel)和SUN 計(jì)算機(jī)(Sun Microsystem)。如今網(wǎng)絡(luò)上存在的大多Web services其實(shí)沒(méi)有使用.NET構(gòu)架,Web services具有互操作屬性,你同
38、樣可以使用Windows開(kāi)發(fā)客戶端來(lái)調(diào)用運(yùn)行于Linux上面的Web services的方法。 Microsoft提供了最佳的服務(wù)器構(gòu)架—Microsoft Windows Server System—便于發(fā)布、配置、管理、編排Web Services。為了滿足分布式計(jì)算的需要微軟構(gòu)造了一系列的服務(wù)器系統(tǒng),這些內(nèi)建安全技術(shù)的系統(tǒng)全部支持XML,這樣加速了系統(tǒng)、應(yīng)用程序以及同樣使用Web Services的伙伴應(yīng)用之間的集成。 .NET Framework 的另一個(gè)主要組件是類庫(kù),它是一個(gè)綜合性的面向?qū)ο蟮目芍赜妙愋图希梢允褂盟_(kāi)發(fā)多種應(yīng)用程序,這些應(yīng)用程序包括傳統(tǒng)的命令行或圖形用戶界
39、面 (GUI) 應(yīng)用程序,也包括基于 C#.NET 所提供的最新創(chuàng)新的應(yīng)用程序(如 Web 窗體和 XML Web Services)。 C#.NET 是使開(kāi)發(fā)人員能夠使用 .NET Framework 開(kāi)發(fā)基于 Web 的應(yīng)用程序的宿主環(huán)境。但是,C#.NET 不止是一個(gè)運(yùn)行庫(kù)宿主;它是使用托管代碼開(kāi)發(fā)網(wǎng)站和通過(guò) Internet 分布的對(duì)象的完整結(jié)構(gòu)。Web 窗體和 XML Web Services 都將 IIS 和 C#.NET 用作應(yīng)用程序的發(fā)布機(jī)制,并且兩者在 .NET Framework 中都具有支持類集合。 2.2.1 C#.NET的主要功能與特點(diǎn) C#.NET是服務(wù)器端
40、的腳本執(zhí)行環(huán)境,可用來(lái)產(chǎn)生和執(zhí)行動(dòng)態(tài)的高性能的WEB服務(wù)器程序。當(dāng)用戶使用瀏覽器請(qǐng)求ASPX主頁(yè)時(shí),WEB服務(wù)器響應(yīng),調(diào)用ASP引擎來(lái)執(zhí)行ASPX文件,并解釋其中的腳本語(yǔ)言(JScript 或VCScript),通過(guò)SQLBC連接數(shù)據(jù)庫(kù),由數(shù)據(jù)庫(kù)訪問(wèn)組件ADO(ActiveX Data Objects)完成數(shù)據(jù)庫(kù)操作,最后ASP生成包含有數(shù)據(jù)查詢結(jié)果的HTML主頁(yè)返回用戶端顯示。由于ASPX在服務(wù)器端運(yùn)行,運(yùn)行結(jié)果以HTML主頁(yè)形式返回用戶瀏覽器,因而ASPX源程序不會(huì)泄密,增加了系統(tǒng)的安全保密性。此外,ASPX是面向?qū)ο蟮哪_本環(huán)境,用戶可自行增加ActiveX組件來(lái)擴(kuò)充其功能,拓展應(yīng)用范圍。
41、 目前C#.NET可運(yùn)行在三種環(huán)境下。 1) WINDOWS NT server 4.0運(yùn)行IIS 3.0(Internet Information Server)以上。 2) WINDOWS NT workstation 4.0運(yùn)行Peer Web Server 3.0以上。 3) WINDOWS 95/98運(yùn)行PWS(Personal Web Server)。 4) WINDOWS XP/VISTA 其中以NT server上的IIS功能最強(qiáng),提供了對(duì)C#.NET的全面支持,是創(chuàng)建高速、穩(wěn)定的ASPX主頁(yè)的最佳選擇。 C#.NET提供了六個(gè)內(nèi)建對(duì)象,供用戶直接調(diào)用: (1)
42、 Application對(duì)象:負(fù)責(zé)管理所有會(huì)話信息,可用來(lái)在指定的應(yīng)用程序的所有用戶之間共享信息。 (2) Session對(duì)象:存貯特定用戶的會(huì)話信息,只被該用戶訪問(wèn),當(dāng)用戶在不同WEB頁(yè)面跳轉(zhuǎn)時(shí),Session中的變量在用戶整個(gè)會(huì)話過(guò)程中一直保存。Session對(duì)象需cookie支持。 (3) Request對(duì)象:從用戶端取得信息傳遞給服務(wù)器,是ASPX讀取用戶輸入的主要方法。 享有工作室-為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案 客服QQ:810354974/844511071/465729264 (4) Response對(duì)象:服務(wù)器將輸出內(nèi)容發(fā)送到用戶端。 (5) Se
43、rver對(duì)象:提供對(duì)服務(wù)器有關(guān)方法和屬性的訪問(wèn)。 (6) Object Context對(duì)象:IIS 4.0新增的對(duì)象,用來(lái)進(jìn)行事務(wù)處理。此項(xiàng)功能需得到MTS(Microsoft Transcation Server)管理的支持。 此外,還可安裝Myinfo、Counters、Content Rotator、Page Count等組件,用戶也可自行編制Actiive組件,以提高系統(tǒng)的實(shí)用性。 WWW上很重要的應(yīng)用是訪問(wèn)WEB數(shù)據(jù)庫(kù),用ASP訪問(wèn)WEB數(shù)據(jù)庫(kù)時(shí),必須使用ADO.NET組件,ADO.NET是ASPX內(nèi)置的ActiveX服務(wù)器組件(ActiveX Server Component
44、),通過(guò)在WEB服務(wù)器上設(shè)置ODBC和OLEDB可連接多種數(shù)據(jù)庫(kù):如SYBASE、ORACLE、INFORMIX、SQL SERVER、ACCESS、VFP等,是對(duì)目前微軟所支持的數(shù)據(jù)庫(kù)進(jìn)行操作的最有效和最簡(jiǎn)單直接的方法。 ADO.NET組件主要提供了以下七個(gè)對(duì)象和四個(gè)集合來(lái)訪問(wèn)數(shù)據(jù)庫(kù)。 (1) Connection對(duì)象:建立與后臺(tái)數(shù)據(jù)庫(kù)的連接。 (2) Command對(duì)象:執(zhí)行SQL指令,訪問(wèn)數(shù)據(jù)庫(kù)。 (3) Parameters對(duì)象和Parameters集合:為Command對(duì)象提供數(shù)據(jù)和參數(shù)。 (4) RecordSet對(duì)象:存放訪問(wèn)數(shù)據(jù)庫(kù)后的數(shù)據(jù)信息,是最經(jīng)常使用的對(duì)象。
45、(5) Field對(duì)象和Field集合:提供對(duì)RecordSet中當(dāng)前記錄的各個(gè)字段進(jìn)行訪問(wèn)的功能。 (6) Property對(duì)象和Properties集合:提供有關(guān)信息,供Connection、Command、RecordSet、Field對(duì)象使用。 (7) Error對(duì)象和Errors集合:提供訪問(wèn)數(shù)據(jù)庫(kù)時(shí)的錯(cuò)誤信息。 在ASPX中,使用ADO.NET組件訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù),可通過(guò)以下步驟進(jìn)行: 1. 定義數(shù)據(jù)源 在WEB服務(wù)器上打開(kāi)“控制面板”,選中“ODBC”,在“系統(tǒng)DSN”下選“添加”,選定你希望的數(shù)據(jù)庫(kù)種類、名稱、位置等。本文定義“SQL SERVER”,數(shù)據(jù)源為“HT”,
46、數(shù)據(jù)庫(kù)名稱為“HTDATA”,腳本語(yǔ)言采用Jscript。 2. 使用ADO.NET組件查詢WEB數(shù)據(jù)庫(kù) 1) 調(diào)用Server.CreateObject方法取得“ADODB.Connection”的實(shí)例,再使用Open方法打開(kāi)數(shù)據(jù)庫(kù): conn = Server.CreateObject(“ADODB.Connection”); conn.Open(“HT”); 2) 指定要執(zhí)行的SQL命令 連接數(shù)據(jù)庫(kù)后,可對(duì)數(shù)據(jù)庫(kù)操作,如查詢,修改,刪除等,這些都是通過(guò)SQL指令來(lái)完成的,如要在數(shù)據(jù)表signaltab中查詢代碼中含有“X”的記錄 sqlStr = “select * fro
47、m signaltab where code like ‘%X%’” rs = conn.Execute(sqlStr); 3) 使用RecordSet屬性和方法,并顯示結(jié)果 為了更精確地跟蹤數(shù)據(jù),要用RecordSet組件創(chuàng)建包含數(shù)據(jù)的游標(biāo),游標(biāo)就是儲(chǔ)存在內(nèi)存中的數(shù)據(jù)。 rs = Server.CreateObject(“ADODB.RecordSet”); rs.Open(sqlStr,conn,1,A); 注:A=1讀取 A=3 新增、修改、刪除 在RecordSet組件中,常用的屬性和方法有: rs.Fields.Count: RecordSet對(duì)象的字段數(shù)。 rs
48、(i).Name: 第i個(gè)字段的名稱,i為0至rs.Fields.Count-1 rs(i): 第i個(gè)字段的數(shù)據(jù),i為0至rs.Fields.Count-1 rs("字段名"): 指定字段的數(shù)據(jù)。 rs.Record.Count:游標(biāo)中的數(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的屬性個(gè)數(shù)。 rs.Properties(item).Name:ADO.NET的ResultSet或Connection的名稱。 rs.Properties: ADO.NET的ResultSet或Connection的值。 rs.close(): 關(guān)閉連接。 4) 關(guān)閉數(shù)據(jù)庫(kù) conn.close() 2.2.2 查詢數(shù)據(jù)庫(kù)舉例 下面這用Admin訪問(wèn)SQL SERVER數(shù)據(jù)庫(kù)的BBS表來(lái)說(shuō)明。 享有工作室-為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案 客服QQ:810354974/844511071/465729264 下面的代碼是管理員管
50、理留言板的頁(yè)面的后臺(tái)代碼: 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(); } } //定義一個(gè)綁定到gridview的方法,實(shí)現(xiàn)分頁(yè)功能! public object bindgridview() { SqlConnection con = DBAcces
53、s.createsqlcon(); con.Open(); //試用sqldataadapter+set來(lái)實(shí)現(xiàn)數(shù)據(jù)源的綁定,實(shí)現(xiàn)gridview分頁(yè)功能。 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"];
// 對(duì)應(yīng)行的主鍵標(biāo)識(shí)!
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)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案 客服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ù)庫(kù)技術(shù)
2.3.1 數(shù)據(jù)庫(kù)簡(jiǎn)介
SQL Server 2008 是 Microsoft .NET E 62、nterprise Server 的數(shù)據(jù)管理與分析中樞。SQL Server 2008 包括加速?gòu)母拍畹阶詈蠼桓堕_(kāi)發(fā)過(guò)程的工具。
集成和可擴(kuò)展的分析服務(wù)。有了 SQL Server 2008,您可以建立帶有集成工具的端到端分析解決方案,從數(shù)據(jù)創(chuàng)造價(jià)值。此外,還可以根據(jù)分析結(jié)果自動(dòng)驅(qū)動(dòng)商業(yè)過(guò)程以及從最復(fù)雜的計(jì)算靈活地檢索自定義結(jié)果集。
快速開(kāi)發(fā)、調(diào)試和數(shù)據(jù)轉(zhuǎn)換。SQL Server 2008 帶有交互式調(diào)節(jié)和調(diào)試查詢、從任何數(shù)據(jù)源快速移動(dòng)和轉(zhuǎn)化數(shù)據(jù)、以及按 Transact-SQL 方式定義和使用函數(shù)等功能。您可以從任意 Visual Studio 工具以可視化方式設(shè)計(jì)和編寫(xiě)數(shù)據(jù)庫(kù)應(yīng)用程序。 63、
簡(jiǎn)化的管理和調(diào)節(jié)。使用 SQL Server 2008,您可以很容易地在企業(yè)資源旁邊集中管理數(shù)據(jù)庫(kù)。可以在保持聯(lián)機(jī)的同時(shí)輕松地在計(jì)算機(jī)間或?qū)嵗g移動(dòng)和復(fù)制數(shù)據(jù)庫(kù)。
數(shù)據(jù)庫(kù)(Database)是與特定主題或用途相關(guān)的數(shù)據(jù)和對(duì)象的集合,用于搜索、排序和重新組織數(shù)據(jù)。數(shù)據(jù)庫(kù)存儲(chǔ)在文件中。SQL Server數(shù)據(jù)庫(kù)可以包含表、視圖、存儲(chǔ)過(guò)程、觸發(fā)器和數(shù)據(jù)關(guān)系圖,還可以包含用戶、角色、規(guī)則、默認(rèn)值、用戶定義的數(shù)據(jù)類型和函數(shù)以及全文目。
2.3.2 SQL Server 2008數(shù)據(jù)庫(kù)的常用命令
(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條件表達(dá)式"
sql="update數(shù)據(jù)表set字段1=值1,字段2=值2……字段n=值n where條件 65、表達(dá)式
(3)刪除數(shù)據(jù)記錄:
sql="delete from數(shù)據(jù)表where條件表達(dá)式"
sql="delete from數(shù)據(jù)表"(將數(shù)據(jù)表所有記錄刪除)
(4)添加數(shù)據(jù)記錄:
sql="insertinto數(shù)據(jù)表(字段1,字段2,字段3…)values(值1,值2,值3…)"
sql="insertinto目標(biāo)數(shù)據(jù)表select*from源數(shù)據(jù)表"(把源數(shù)據(jù)表的記錄添加到目標(biāo)數(shù)據(jù)表)
(5)數(shù)據(jù)記錄統(tǒng)計(jì)函數(shù):
AVG(字段名)得出一個(gè)表格欄平均值
COUNT(*字段名)對(duì)數(shù)據(jù)行數(shù)的統(tǒng)計(jì)或?qū)δ骋粰谟兄档臄?shù)據(jù)行數(shù)統(tǒng)計(jì)
MAX(字段名)取得一個(gè)表格欄最大的值
MIN(字段名 66、)取得一個(gè)表格欄最小的值
SUM(字段名)把數(shù)據(jù)欄的值相加
引用以上函數(shù)的方法:
sql="select sum(字段名)as別名from數(shù)據(jù)表where條件表達(dá)式"
set rs=conn.excute(sql)
用rs("別名")獲取統(tǒng)的計(jì)值,其它函數(shù)運(yùn)用同上。
(5)數(shù)據(jù)表的建立和刪除:
CREATETABLE數(shù)據(jù)表名稱(字段1類型1(長(zhǎng)度),字段2類型2(長(zhǎng)度)……)
DROPTABLE數(shù)據(jù)表名稱(永久性刪除一個(gè)數(shù)據(jù)表)
4.記錄集對(duì)象的方法:
rs.movenext將記錄指針從當(dāng)前的位置向下移一行
rs.moveprevious將記錄指針從當(dāng)前的位置向上移一行
rs.movefirst將記錄指針移到數(shù)據(jù)表第一行
rs.movelast將記錄指針移到數(shù)據(jù)表最后一行
享有工作室-為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案 客服QQ:810354974/844511071/465729264
rs.absoluteposition=N將記錄指針移到數(shù)據(jù)表第N行
rs.absolutepage=N將記錄指針
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《產(chǎn)品價(jià)值鏈與營(yíng)銷戰(zhàn)略》
- lecture 9(精品)
- Where’s your pen pal from (2)
- (精品)實(shí)驗(yàn)二血清γ球蛋白的分離純化與鑒定by陳蔚文
- 企業(yè)專利風(fēng)險(xiǎn)管理
- 高中記敘文寫(xiě)作指導(dǎo):寫(xiě)人要凸顯個(gè)性ppt課件
- 新生兒溶血病的發(fā)病機(jī)理臨床癥狀課件
- 7、艱辛的求索 (2)
- 學(xué)校心理健康教育組織管理課件
- IE七大手法的發(fā)展歷程
- 頸托的正確使用課件
- (精品)電功與電功率復(fù)習(xí)1
- 李曉光-管理學(xué)原理第十三章領(lǐng)導(dǎo)工作概述
- 固體中的相結(jié)構(gòu)
- 智能化酒店系統(tǒng)PPT