基于.NET的教務(wù)管理系統(tǒng)_第1頁
基于.NET的教務(wù)管理系統(tǒng)_第2頁
基于.NET的教務(wù)管理系統(tǒng)_第3頁
基于.NET的教務(wù)管理系統(tǒng)_第4頁
基于.NET的教務(wù)管理系統(tǒng)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、學生版摘要:隨著計算機的普及,網(wǎng)絡(luò)的廣泛的應(yīng)用,很多用人單位都使用網(wǎng)絡(luò)系統(tǒng)來對人員、公司的數(shù)據(jù)進行管理。教務(wù)管理系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)完全性好的庫。而對于后者那么要求程序功能完備,易使用等特點。教務(wù)管理的易操作性,使得在大學和中學、小學廣泛使用。本系統(tǒng)的開發(fā)環(huán)境是vs2005,使用面向?qū)ο蟮腃#語言開發(fā)。該論文是基于ASP.NET的教務(wù)管理系統(tǒng)學生版,因此,本文主要介紹了開發(fā)環(huán)境和其模塊化的設(shè)計,以及其開發(fā)的特點,介紹了教務(wù)管理學生版的各個模塊功能和代碼,數(shù)據(jù)庫需求與開發(fā),重點說

2、明了開發(fā)思想和難點的實現(xiàn)。關(guān)鍵字:數(shù)據(jù)庫,SQL2000,ASP.NET ,C#,教務(wù)管理 Educational Management System Based on AstudentAbstract: With the growing population of the computer and network application, enterprises data and staff are administrated through network. Administrative Management System is a typical information manageme

3、nt system including post-stage date base establishment and maintenance and application. For the former, data coherency and integrity are required. For the latter one, data functions integrity and use convenience are required. The applicable administrative management system which is stable enables wi

4、de application in universities, middle schools and primary schools.This system, based on VS2005 with C# language as the Object Oriented, and this thesis bases on ASP.NET administrative management system (students version). Therefore, it mainly introduces development environment and other modularizat

5、ion designs as well as its features. As well, it gives an introduction to each modules function and code, data base demand and development, emphasizing development ideas and solutions of difficult issues.Key word:SQL2000,ASP.NET , C#, educational administration manage ,Database目錄 TOC o 1-2 h z HYPER

6、LINK l _Toc199770587 1 概述 PAGEREF _Toc199770587 h 1 HYPERLINK l _Toc199770588 選題的背景與意義 PAGEREF _Toc199770588 h 1 HYPERLINK l _Toc199770589 開發(fā)工具的選用與比擬 PAGEREF _Toc199770589 h 2 HYPERLINK l _Toc199770590 本章小結(jié) PAGEREF _Toc199770590 h 2 HYPERLINK l _Toc199770591 簡介 PAGEREF _Toc199770591 h 3 HYPERLINK l

7、_Toc199770592 .NET與ASP的區(qū)別以及窺探 PAGEREF _Toc199770592 h 3 HYPERLINK l _Toc199770593 基于B/S模式的三層架構(gòu)開發(fā) PAGEREF _Toc199770593 h 6 HYPERLINK l _Toc199770594 2.3C#語言探討 PAGEREF _Toc199770594 h 6 HYPERLINK l _Toc199770595 本章小結(jié) PAGEREF _Toc199770595 h 8 HYPERLINK l _Toc199770596 3 需求分析 PAGEREF _Toc199770596 h 9

8、 HYPERLINK l _Toc199770597 工程需求 PAGEREF _Toc199770597 h 9 HYPERLINK l _Toc199770598 性能需求 PAGEREF _Toc199770598 h 9 HYPERLINK l _Toc199770599 本章小結(jié) PAGEREF _Toc199770599 h 11 HYPERLINK l _Toc199770600 4 系統(tǒng)分析 PAGEREF _Toc199770600 h 12 HYPERLINK l _Toc199770601 系統(tǒng)流程分析 PAGEREF _Toc199770601 h 12 HYPERLI

9、NK l _Toc199770602 數(shù)據(jù)庫流程分析 PAGEREF _Toc199770602 h 13 HYPERLINK l _Toc199770603 數(shù)據(jù)庫實體分析 PAGEREF _Toc199770603 h 14 HYPERLINK l _Toc199770604 本章小結(jié) PAGEREF _Toc199770604 h 15 HYPERLINK l _Toc199770605 5 數(shù)據(jù)庫設(shè)計 PAGEREF _Toc199770605 h 16 HYPERLINK l _Toc199770606 創(chuàng)立數(shù)據(jù)庫 PAGEREF _Toc199770606 h 16 HYPERLI

10、NK l _Toc199770607 創(chuàng)立表 PAGEREF _Toc199770607 h 17 HYPERLINK l _Toc199770608 本章小結(jié) PAGEREF _Toc199770608 h 21 HYPERLINK l _Toc199770609 6系統(tǒng)設(shè)計 PAGEREF _Toc199770609 h 22 HYPERLINK l _Toc199770610 類的創(chuàng)立 PAGEREF _Toc199770610 h 22 HYPERLINK l _Toc199770611 界面設(shè)計 PAGEREF _Toc199770611 h 24 HYPERLINK l _Toc1

11、99770612 本章小結(jié) PAGEREF _Toc199770612 h 30 HYPERLINK l _Toc199770613 7 總結(jié) PAGEREF _Toc199770613 h 32 HYPERLINK l _Toc199770615 謝 辭 PAGEREF _Toc199770615 h 341 概述背景:已了解的本課題國內(nèi)外研究現(xiàn)狀近年來,隨著企業(yè)信息化的開展,學校中的電子文檔也變得越來越多,各種影、音、圖像等多媒體信息文檔也大量出現(xiàn)。21世紀以來,人類經(jīng)濟高速開展,人們發(fā)生了日新月異的變化,特別是計算機的應(yīng)用及普及到經(jīng)濟和社會生活的各個領(lǐng)域。使原本的舊的管理方法越來越不適應(yīng)

12、現(xiàn)在社會的開展。許多人還停留在以前的手工操作。這大大地阻礙了人類經(jīng)濟的開展。為了適應(yīng)現(xiàn)代社會人們高度強烈的時間觀念,學校信息管理系統(tǒng)軟件為學校辦公室?guī)砹藰O大的方便。此時,微軟推出了ASP.NET,它不是ASP的簡單升級,而是全新一代的動態(tài)網(wǎng)頁實現(xiàn)系統(tǒng),用于一臺WEB效勞器建立強大的應(yīng)用程序。是微軟開展的新體系結(jié)構(gòu).NET的一局部,是ASP和.NET技術(shù)的結(jié)合。提供基于組件、事件驅(qū)動的可編程網(wǎng)絡(luò)表單,大大簡化了編程。利用面向?qū)ο蟮木幊陶Z言,提高代碼的可重用性;編譯運行的編程框架,大大提高程序運行速率。 在.NET 開發(fā)平臺下,所有語言C#、VB.NET 、J# 、C+都會被編譯為MSIL(微軟

13、中間語言即Microsoft Intermediate Language)1,再由CLR負責運行,增強了程序的可移植性。中外學者普遍認為,信息是企業(yè)開展的一個非常重要的資源,信息作為資源,除了一般的可利用、有價值等特性外,還具備共享性、歷史積累性、時效性和屢次再生性的特性。隨著 Internet 的開展,建立面向不同用戶的教務(wù)管理系統(tǒng)是非常必要的。建立教務(wù)管理系統(tǒng)的目的就是要實現(xiàn)對文檔的集中存儲和管理,從而可以很好地保證文檔的存儲平安,提高文檔的平安訪問級別,很好地實現(xiàn)文檔的分發(fā)、查詢、共享,提高學校的文檔管理和使用效率。從知識管理的角度,建立信息管理系統(tǒng),使人與知識資源有機結(jié)合,它將人、知識

14、與現(xiàn)實工作任務(wù)整合起來,必將為學校管理帶來實效。意義:現(xiàn)代化學校應(yīng)該有個現(xiàn)代化的管理系統(tǒng)去管理學校內(nèi)的各項事物,學校是一個數(shù)據(jù)量比擬大的單位,如何去管理及查詢學校內(nèi)的數(shù)據(jù)就成為了一項及為重要,而且需要迫切解決的問題,所以開發(fā)出一個教務(wù)管理系統(tǒng)就是現(xiàn)在及為重要的事情,從而教務(wù)管理系統(tǒng)的重要性就不言而喻了。此系統(tǒng)的設(shè)計聯(lián)系到多個方面系統(tǒng)設(shè)計的工具比擬與選用:NET2.0有四個特點:1、基于XML文件的共同語言 2、定制效勞軟件 3、融合多平臺設(shè)備以及新一代的人機交互頁面2。與VS2003比擬,VS2005有以下幾個優(yōu)點:大多數(shù)WEB常用控件開箱即可使用,在建立站點和維護網(wǎng)站比以前更加方便,代碼量比

15、以前更少,vs2005是基于文件管理的,而vs2003是基于解決方案管理的,vs2005比 vs2003管理起來更為方便。因此選用vs2005數(shù)據(jù)庫設(shè)計的工具比擬與選用:Access是一種桌面數(shù)據(jù)庫,只適合數(shù)據(jù)量少的應(yīng)用,在處理少量數(shù)據(jù)和單機訪問的數(shù)據(jù)庫時是很好的,效率也很高。但是它的同時訪問客戶端不能多于4個。access數(shù)據(jù)庫有一定的極限,如果數(shù)據(jù)到達100M左右,很容易造成效勞器iis假死,或者消耗掉效勞器的內(nèi)存導致效勞器崩潰。SQL Server是基于效勞器端的中型的數(shù)據(jù)庫,可以適合大容量數(shù)據(jù)的應(yīng)用,在功能上管理上也要比Access要強得多。在處理海量數(shù)據(jù)的效率,后臺開發(fā)的靈活性,可擴

16、展性等方面強大。因為現(xiàn)在數(shù)據(jù)庫都使用標準的SQL語言對數(shù)據(jù)庫進行管理,所以如果是標準SQL語言,兩者根本上都可以通用的。SQL Server還有更多的擴展,可以用存儲過程,數(shù)據(jù)庫大小無極限限制7。因此,對數(shù)據(jù)庫的設(shè)計使用SQLSERVER。本章簡單介紹了vs2005與vs2003的區(qū)別,說明了vs2005 的優(yōu)勢在于站點的維護更為方便,代碼更為精簡,以及ACCESS 與SQLSERVER的區(qū)別,SQLSERVER在處理海量數(shù)據(jù)效率高,后臺開發(fā)靈活度大,可擴展性強,有利于以后對數(shù)據(jù)大量增加進行管理。 ASP.Net和ASP的最大區(qū)別在于編程思維的轉(zhuǎn)換,而不僅僅在于功能的增強。ASP使用VBS/J

17、S這樣的腳本語言混合html來編程,而那些腳本語言屬于弱類型、面向結(jié)構(gòu)的編程語言,而非面向?qū)ο?,這就明顯產(chǎn)生以下幾個問題: 1)碼邏輯混亂,難于管理:由于ASP是腳本語言混合html編程,所以你很難看清代碼的邏輯關(guān)系,并且隨著程序的復雜性增加,使得代碼的管理十分困難,甚至超出一個程序員所能到達的管理能力,從而造成出錯或這樣那樣的問題。 2)代碼的可重用性差:由于是面向結(jié)構(gòu)的編程方式,并且混合html,所以可能頁面原型修改一點,整個程序都需要修改,更別提代碼重用了。3)弱類型造成潛在的出錯可能:盡管弱數(shù)據(jù)類型的編程語言使用起來回方便一些,但相對于它所造成的出錯幾率是遠遠得不償失的。 以上是語言本

18、身的弱點,在功能方面ASP同樣存在問題,第一是功能太弱,一些底層操作只能通過組件來完成,在這點上是遠遠比不上PHP/JSP,其次就是缺乏完善的糾錯/調(diào)試功能,這點上ASP/PHP/JSP差不多。 那么,ASP.Net有哪些改良呢? ASP.Net擺脫了以前ASP使用腳本語言來編程的缺點,理論上可以使用任何編程語言包括C+ , VB , JS等等,當然,最適宜的編程語言還是MS為.Net Framework 專門推出的C(讀c sharp),它可以看作是VC和Java的混合體吧,盡管MS自己講C#內(nèi)核中更多的象VC,但實際上我還是認為它和Java更象一些吧。首先它是面向?qū)ο蟮木幊陶Z言3,而不是一

19、種腳本,所以它具有面向?qū)ο缶幊陶Z言的一切特性,比方封裝性、繼承性、多態(tài)性等等,這就解決了剛剛談到的ASP的那些弱點。封裝性使得代碼邏輯清晰,易于管理,并且應(yīng)用到ASP.Net上就可以使業(yè)務(wù)邏輯和Html頁面別離,這樣無論頁面原型如何改變,業(yè)務(wù)邏輯代碼都不必做任何改動;繼承性和多態(tài)性使得代碼的可重用性大大提高,你可以通過繼承已有的對象最大限度保護你以前的投資。并且C#和C+、Java一樣提供了完善的調(diào)試/糾錯體系。ASPActive Server Pages是Microsoft公司1996年11月推出的WEB應(yīng)用程序開發(fā)技術(shù),它既不是一種程序語言,也不是一種開發(fā)工具,而是一種技術(shù)框架,不須使用微

20、軟的產(chǎn)品就能編寫它的代碼,能產(chǎn)生和執(zhí)行動態(tài)、交互式、高效率的站占效勞器的應(yīng)用程序。運用ASP可將VBScript、JavaScript等腳本語言嵌入到HTML中,便可快速完成網(wǎng)站的應(yīng)用程序,無需編譯,可在效勞器端直接執(zhí)行。容易編寫,使用普通的文本編輯器編寫,如記事本就可以完成。由腳本在效勞器上而不是客戶端運行,ASP所使用的腳本語言都在效勞端上運行,用戶端的瀏覽器不需要提供任何別的支持,這樣大提高了用戶與效勞器之間的交互的速度。此外,它可通過內(nèi)置的組件實現(xiàn)更強大的功能,如使用A-DO可以輕松地訪問數(shù)據(jù)庫。 微軟又推出ASP.NET。這不是ASP的簡單升級,而是全新一代的動態(tài)網(wǎng)頁實現(xiàn)系統(tǒng),用于一

21、臺WEB效勞器建立強大的應(yīng)用程序。是微軟開展的新體系結(jié)構(gòu).NET的一局部,是ASP和.NET技術(shù)的結(jié)合。提供基于組件、事件驅(qū)動的可編程網(wǎng)絡(luò)表單,大大簡化了編程。還可以用ASP.NET建立網(wǎng)絡(luò)效勞。 ASP與ASP.NET的區(qū)別:開發(fā)語言不同:ASP僅局限于使用non-type腳本語言來開發(fā),用戶給WEB頁中添加ASP代碼的方法與客戶端腳本中添加代碼的方法相同,導致代碼雜亂。 ASP.NET允許用戶選擇并使用功能完善的strongly-type編程語言,也允許使用潛力巨大的.NET Framework。 運行機制不同:ASP是解釋運行的編程框架,所以執(zhí)行效率加較低。 ASP.NET是編譯性的編程

22、框架,運行是效勞器上的編譯好的公共語言運行時庫代碼,可以利用早期綁定,實施編譯來提高效率。 開發(fā)方式:ASP把界面設(shè)計和程序設(shè)計混在一起,維護和重用困難。ASP.NET把界面設(shè)計和程序設(shè)計以不同的文件別離開,復用性和維護性得到了提高。增強的性能:ASP.NET是在效勞器上運行的編譯好的公共語言運行庫代碼。與被解釋的前輩不同,ASP.NET 可利用早期綁定、實時編譯、本機優(yōu)化和盒外緩存效勞。這相當于在編寫代碼行之前便顯著提高了性能。 世界級的工具支持:ASP.NET 框架補充了 Visual Studio 集成開發(fā)環(huán)境中的大量工具箱和設(shè)計器。WYSIWYG 編輯、拖放效勞器控件和自動部署只是這個

23、強大的工具所提供功能中的少數(shù)幾種。威力和靈活性:由于 ASP.NET 基于公共語言運行庫,因此 Web 應(yīng)用程序開發(fā)人員可以利用整個平臺的威力和靈活性。.NET 框架類庫、消息處理和數(shù)據(jù)訪問解決方案都可從 Web 無縫訪問。ASP.NET 也與語言無關(guān),所以可以選擇最適合應(yīng)用程序的語言,或跨多種語言分割應(yīng)用程序。另外,公共語言運行庫的交互性保證在遷移到 ASP.NET 時保存基于 COM 的開發(fā)中的現(xiàn)有投資。簡易性:ASP.NET 使執(zhí)行常見任務(wù)變得容易,從簡單的窗體提交和客戶端身份驗證到部署和站點配置。例如,ASP.NET 頁框架使您可以生成將應(yīng)用程序邏輯與表示代碼清楚分開的用戶界面,和在類

24、似 Visual Basic 的簡單窗體處理模型中處理事件。另外,公共語言運行庫利用托管代碼效勞如自動引用計數(shù)和垃圾回收簡化了開發(fā)??晒芾硇裕篈SP.NET 采用基于文本的分層配置系統(tǒng),簡化了將設(shè)置應(yīng)用于效勞器環(huán)境和 Web 應(yīng)用程序。由于配置信息是以純文本形式存儲的,因此可以在沒有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此零本地管理哲學也擴展到了 ASP.NET 框架應(yīng)用程序的部署。只需將必要的文件復制到效勞器,即可將 ASP.NET 框架應(yīng)用程序部署到效勞器。不需要重新啟動效勞器,即使是在部署或替換運行的編譯代碼時??煽s放性和可用性:ASP.NET 在設(shè)計時考慮了可縮放性,增加了專門用于在聚集

25、環(huán)境和多處理器環(huán)境中提高性能的功能。另外,進程受到 ASP.NET 運行庫的密切監(jiān)視和管理,以便當進程行為不正常泄漏、死鎖時,可就地創(chuàng)立新進程,以幫助保持應(yīng)用程序始終可用于處理請求。自定義性和擴展性:ASP.NET 隨附了一個設(shè)計周到的結(jié)構(gòu),它使開發(fā)人員可以在適當?shù)募墑e插入代碼。實際上,可以用自己編寫的自定義組件擴展或替換 ASP.NET 運行庫的任何子組件。實現(xiàn)自定義身份驗證或狀態(tài)效勞一直沒有變得更容易。B/SBrowser/Server結(jié)構(gòu)即瀏覽器和效勞器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改良的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),極少

26、局部事務(wù)邏輯在前端Browser實現(xiàn),但是主要事務(wù)邏輯在效勞器端Server實現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的本錢和工作量,降低了用戶的總體本錢TCO。三層架構(gòu)為:表現(xiàn)層:位于最外層最上層,離用戶最近。用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作的界面。 中間業(yè)務(wù)層:負責處理用戶輸入的信息,或者是將這些信息發(fā)送給數(shù)據(jù)訪問層進行保存,或者是調(diào)用數(shù)據(jù)訪問層中的函數(shù)再次讀出這些數(shù)據(jù)。中間業(yè)務(wù)層也可以包括一些對“商業(yè)邏輯描述代碼在里面。數(shù)據(jù)訪問層:僅實現(xiàn)對數(shù)據(jù)的保存和讀取操作。數(shù)據(jù)訪問,可以訪問數(shù)據(jù)庫系統(tǒng)、二進制文件、文本文檔或是X

27、ML文檔。ASP.NET是在網(wǎng)頁中使用基于事件的處理,可以指定處理的后臺代碼文件,可以使用C#, VB,J#作為后臺代碼的語言。.NET中可以方便的實現(xiàn)組件的裝配,后臺代碼通過命名控件可以方便的使用自己定義的組件。顯示層放在 ASP頁面中,數(shù)據(jù)庫操作和邏輯層用組件來實現(xiàn),這樣就很方便的實現(xiàn)了b/s模式三層架構(gòu)。2.3C#語言探討Visual C#讀作“C sharp是 Visual Studio .NET 中引入的一種新的編程語言。C# 從 C 和 C+ 演變而來,是一種簡單、現(xiàn)代、類型平安和面向?qū)ο蟮恼Z言。設(shè)計 C# 是為了建立運行于 .NET 平臺上的、范圍廣泛的企業(yè)級應(yīng)用程序。用 Vis

28、ual C# 編寫的代碼被編譯為托管代碼,這意味著它將受益于公共語言運行庫的效勞。這些效勞包括:語言互操作性、垃圾回收、增強的平安性以及改良的版本支持。在Visual Studio .NET中有很多不同的開發(fā)語言,JAVA,JSP,VB等等,正如以上所說的,C#從頭到尾完全被構(gòu)造,使編程和維護變得更容易,它根本上具備了VB的所有優(yōu)點,并且把他添加到C/C+,但又去掉了C+中深奧的而且很少用到的高級功能,使得代碼更加穩(wěn)定,更加平安。在Visual Studio .NET的開發(fā)中,C#為首選語言。C#最引人入勝的地方是它和Java的不同,而不是相似的地方。這一節(jié)(和這個系列第二局部的大局部地方)講

29、述了C#實現(xiàn)的和Java不同的地方或者Java根本沒有的特點。中間代碼:微軟在用戶選擇何時MSIL應(yīng)該編譯成機器碼的時候是留了很大的余地。而這種實現(xiàn)方式?jīng)Q定了基于MSIL的程序(指的是用C#,Visual Basic, Managed C+-C+的一個符合CLS的版本-等語言編寫的程序)將在性能上超過解釋性的Java代碼。當然,這一點還需要得到事實證明,因為C#和其他生成MSIL的編譯器還沒有發(fā)布。但是Java JIT編譯器的普遍存在使得Java和C#在性能上相對相同。象C#是編譯語言而Java是解釋性的,之類的聲明只是商業(yè)技巧。Java的中間代碼和MSIL都是中間的匯編形式的語言,它們在運行

30、時或其它的時候被編譯成機器代碼。命名空間中的申明:當你創(chuàng)立一個程序的時候,你在一個命名空間里創(chuàng)立了一個或多個類。同在這個命名空間里(在類的外面)你還有可能聲明界面,枚舉類型和結(jié)構(gòu)體。必須使用using關(guān)鍵字來引用其他命名空間的內(nèi)容。根本的數(shù)據(jù)類型:C#擁有比C,C+或者Java更廣泛的數(shù)據(jù)類型.這些類型是bool, byte, ubyte, short, ushort, int, uint, long, ulong, float, double,和decimal。象Java一樣,所有這些類型都有一個固定的大小。又象C和C+一樣,每個數(shù)據(jù)類型都有有符號和無符號兩種類型5。與Java相同的是,一個

31、字符變量包含的是一個16位的Unicode字符。C#新的數(shù)據(jù)類型是decimal數(shù)據(jù)類型,對于貨幣數(shù)據(jù),它能存放28位10進制數(shù)字。兩個根本類:一個名叫object的類是所有其他類的基類。而一個名叫string的類也象object一樣是這個語言的一局部。作為語言的一局部存在意味著編譯器有可能使用它-無論何時你在程序中寫入一句帶引號的字符串,編譯器會創(chuàng)立一個string對象來保存它。參數(shù)傳遞:方法可以被聲明接受可變數(shù)目的參數(shù)。缺省的參數(shù)傳遞方法是對根本數(shù)據(jù)類型進行值傳遞。ref關(guān)鍵字可以用來強迫一個變量通過引用傳遞,這使得一個變量可以接受一個返回值。out關(guān)鍵字也能聲明引用傳遞過程,與ref不同

32、的地方是,它指明這個參數(shù)并不需要初始值。與COM的集成:C#對Windows程序最大的賣點可能就是它與COM的無縫集成了,COM就是微軟的Win32組件技術(shù)。C#編寫的類可以子類化一個以存在的COM組件;生成的類也能被作為一個COM組件使用,然后又能使用,比方說,JScript語言子類化它從而得到第三個COM組件。索引下標:一個索引與屬性除了不使用屬性名來引用類成員而是用一個方括號中的數(shù)字來匿名引用(就象用數(shù)組下標一樣)以外是相似的.代理和反應(yīng):一個代理對象包括了訪問一個特定對象的特定方法所需的信息。只要把它當成一個聰明的方法指針就行了。代理對象可以被移動到另一個地方,然后可以通過訪問它來對已

33、存在的方法進行類型平安的調(diào)用。一個反應(yīng)方法是代理的特例。event關(guān)鍵字用在將在事件發(fā)生的時候被當成代理調(diào)用的方法聲明中。本章介紹了ASP.NET的一些特點,說明了在當今WEB開發(fā)中有著非常重要的地位,介紹了B/S模型,與三層架構(gòu),與ASP.NET在實現(xiàn)B/S模型三層架構(gòu)上的優(yōu)勢,最后介紹了ASP.NET首選語言C#。3 需求分析1公告通知 查看教務(wù)管理處發(fā)布的消息2成績查詢 有選擇性的查詢成績,并且顯示所得學分3課表查詢 查詢某個學期的課表,并且顯示該課程的詳細信息。4選課 選擇或者取消所選課程。5留言版 給某個人留下短訊息。6) 修改密碼7返回主頁8收藏本頁 為了保證系統(tǒng)能夠長期、平安、穩(wěn)

34、定、可靠、高效的運行,教務(wù)管理系統(tǒng)應(yīng)該滿足以下的性能需求:1系統(tǒng)處理的準確性和及時性系統(tǒng)處理的準確性和及時性是系統(tǒng)的必要性能。在系統(tǒng)設(shè)計和開發(fā)過程中,要充分考慮系統(tǒng)當前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時間能夠滿足企業(yè)對信息處理的需求。由于管理系統(tǒng)的數(shù)據(jù)錄入功能對于整個系統(tǒng)的功能和性能完成舉足輕重。作為系統(tǒng)的很多數(shù)據(jù)來源,而數(shù)據(jù)的采集錄入又影響企業(yè)的決策活動,其準確性很大程度上決定了查詢與決策的成敗。在系統(tǒng)開發(fā)過程中,必須采用一定的方法保證系統(tǒng)的準確性。2系統(tǒng)的開放性和系統(tǒng)的可擴充性教務(wù)管理系統(tǒng)在開發(fā)過程中,應(yīng)該充分考慮以后的可擴充性。例如用戶查詢的需求也會不斷的更新和完善。所有這

35、些,都要求系統(tǒng)提供足夠的手段進行功能的調(diào)整和擴充。而要實現(xiàn)這一點,應(yīng)通過系統(tǒng)的開放性來完成,既系統(tǒng)應(yīng)是一個開放系統(tǒng),只要符合一定的標準,可以簡單的參加和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件。通過軟件的修補、替換完成系統(tǒng)的升級和更新?lián)Q代。3系統(tǒng)的易用性和易維護性教務(wù)管理系統(tǒng)是直接面對使用人員的,而使用人員往往對計算機并不時非常熟悉。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機交互界面。要實現(xiàn)這一點,就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語和中文信息的界面;針對用戶可能出現(xiàn)的使用問題,要提供足夠的在線幫助,縮短用戶對系統(tǒng)熟悉的過程。教務(wù)管理系統(tǒng)中涉及到的數(shù)據(jù)是相當重要的信息,系統(tǒng)要提供方便的手段供系統(tǒng)維護

36、人員進行數(shù)據(jù)的備份,日常的平安管理,系統(tǒng)意外崩潰時數(shù)據(jù)的恢復等工作。4系統(tǒng)的標準性系統(tǒng)在設(shè)計開發(fā)使用過程中都要涉及到很多計算機硬件、軟件。所有這些都要符合主流國際、國家和行業(yè)標準。例如在開發(fā)中使用的操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、開發(fā)工具都必須符合通用標準。如標準的數(shù)據(jù)庫操縱界面、作為業(yè)界標準的TCP/IP網(wǎng)絡(luò)協(xié)議及ISO9002標準所要求的質(zhì)量標準等;同時,在自主開發(fā)本系統(tǒng)時,要進行良好的設(shè)計工作,制訂行之有效的軟件工程標準,保證代碼的易讀性、可操作性和可移植性。5系統(tǒng)的先進性目前計算系統(tǒng)的技術(shù)開展相當快,做為教務(wù)管理系統(tǒng)工程,在系統(tǒng)的生命周期盡量做到系統(tǒng)的先進,充分完成企業(yè)信息處理的要求而不至于落后。

37、這一方面通過系統(tǒng)的開放性和可擴充性,不斷改善系統(tǒng)的功能完成。另一方面,在系統(tǒng)設(shè)計和開發(fā)的過程中,應(yīng)在考慮本錢的根底上盡量采用當前主流并先進且有良好開展前途的產(chǎn)品。6系統(tǒng)的響應(yīng)速度教務(wù)管理系統(tǒng)系統(tǒng)在日常處理中的響應(yīng)速度為秒級,到達實時要求,以及時反應(yīng)信息。在進行統(tǒng)計分析時,根據(jù)所需數(shù)據(jù)量的不同而從秒級到分鐘級, 原那么是保證操作人員不會因為速度問題而影響工作效率。本章主要講述了性能需求與工程需求,在工程需求中主要使要對人員的管理,資源的充分利用,制定工作方案,降低本錢,降低風險。在系統(tǒng)需求中最重要的是要使系統(tǒng)具有可擴展性,平安性,界面人性化。4 系統(tǒng)分析系統(tǒng)總體設(shè)計如下列圖1 圖1 頁面關(guān)系示意

38、圖 登陸界面此頁面為驗證用戶登陸,如果沒有登陸將不能訪問以后的界面。系統(tǒng)主界面此頁面為保證其他模式頁面的樣板一樣,保持統(tǒng)一界面。3公告通知顯示系統(tǒng)消息。4課表查詢查詢某個學生的所有課程。5學生選課查詢所選課程,選學某個課程。6留言版給某個用戶留言。 1成績查詢?nèi)缦铝袌D2 SHAPE * MERGEFORMAT 圖2 成績查詢流程圖2選課查詢?nèi)缦铝袌D3 SHAPE * MERGEFORMAT 圖3 選課查詢流程圖1數(shù)據(jù)模型設(shè)計。首先做出學生管理的ER圖,分析一個問題的實體,從系統(tǒng)分析可以知道,學生的成績是由任課老師按照課程給出的,學生,課程,老師組成了這個系統(tǒng)的三個實體7。2再分析三個實體之間的

39、聯(lián)系。首先,這三個實體不是一個統(tǒng)一體,學生成績與老師沒有內(nèi)在的聯(lián)系,老師必須通過課程實體才能與學生建立聯(lián)系,因而不考慮。課程與學生這兩個實體是多對多的聯(lián)系,一個學生要學習多門課程,一門課程有多名學生學習。而學習成績是這兩個實體“學生和“成績共有的屬性,應(yīng)填在二者的聯(lián)系的“學習邊。因為成績不是學生獨有的,也不是課程獨有的;“某個學生80分或“某們課程80分是不完全的,但說“學生甲的語文80分才是正確的,因為80分是學生甲和英語課程共有的。ER圖4如下: 圖4 學生與課程ER圖 教師與課程這兩個實體之間,是一對多的聯(lián)系;一位教師可以交多門課程,而一個課程對于學生成績來說只能有一為教師,ER圖5如下

40、所示。 圖5 學生與老師ER圖與課程和教師ER圖組合在一起,得到最后的ER圖,有了ER圖6,就可以設(shè)計數(shù)據(jù)庫了,如下列圖6。圖6 數(shù)據(jù)庫示意圖 本章介紹了系統(tǒng)模型,說明了每個模塊的功能,簡單地講述了數(shù)據(jù)庫流程和數(shù)據(jù)庫實體的分析,對一對多,多對一和多對多的數(shù)據(jù)模型進行了具體的分析,通過學生,選課和教師的關(guān)系具體分析了這一點。5 數(shù)據(jù)庫設(shè)計 在Microsoft SQL Server 2000 中,創(chuàng)立test數(shù)據(jù)庫.具體操作步驟如下:1選擇開始|程序|Microsoft SQL Server|企業(yè)管理器命令,啟動Microsoft SQL Server 企業(yè)管理器.2在控制臺樹中右擊數(shù)據(jù)庫節(jié)點,

41、然后從快捷菜單中選擇新建數(shù)據(jù)庫命令.3翻開數(shù)據(jù)庫屬性對話框,輸入數(shù)據(jù)庫的名稱test,單擊確定按鈕,結(jié)束表命令操作8.數(shù)據(jù)庫創(chuàng)立完畢,企業(yè)管理器控制臺如下列圖7所示.圖7 數(shù)據(jù)庫創(chuàng)立1學生表:學生表的字段類型與長度如圖8圖8 學生數(shù)據(jù)表表5.1 學生表各個字段含義圖字段 字段含義stuID專業(yè)stuName姓名sex性別birthday出生日期dept所在系comedate入校學期password登陸密碼specialty所學專業(yè)grade所在班級2老師表老師各個字段的數(shù)據(jù)類型與長度如圖9圖9 老師數(shù)據(jù)圖表5.2 老師各個字段含義表 字段字段含義teaID職工序號teaName老師名稱Sex性

42、別Dept任課系別Birthday出生日期Password登陸密碼Degree教師學位telephonenumber聯(lián)系 3課程表課程表各個字段的類型和長度如圖10圖10 課程表表5.3 課程表各個字段含義表字段字段含義id序號week第幾節(jié)課course課程名nowdate上課學期dept上課院系coursetime總學時xuefen學分shangkebanji上課班級4選課表選課表各個字段的類型與長度如圖11圖11 選課表表5.4 選課表各個字段的含義字段字段含義courseID課程號stuID學生學號stuName學生姓名teaName老師姓名grade分數(shù)nowtime上課學期cour

43、sename課程名5所有課表所有課表字段的類型和長度如圖12圖12 所有課表表5.5 所有課表各個字段的含義字段字段含義courseID課程號coursename課程名teaName任課老師checkstyle考試類型coursequstity選課類型6公告通知表公告通知各個字段的類型與長度圖13 公告通知表表5.6 公告通知表的各個字段的含義字段字段含義id序號name公告標題filename文件名faxingren發(fā)行人createtime創(chuàng)立時間7留言表留言表字段的數(shù)據(jù)類型與長度如圖14圖14 留言表表5.7 留言表字段含義字段字段含義faxingren發(fā)信人shouxingren收信人

44、biaoti標題shijian發(fā)信時間leirong內(nèi)容 本章主要是對數(shù)據(jù)庫的設(shè)計與創(chuàng)立,詳細說明了數(shù)據(jù)庫的創(chuàng)立 ,每個表的作用,用表的方式說明了每個表,每個字段的定義。6系統(tǒng)設(shè)計Pagebase.cs:該類為每個頁面的基類,用來驗證用戶是否登陸系統(tǒng),如果沒有登陸系統(tǒng),返回登陸界面,代碼如下10:public void PageBegin(string fName) if (fName = null | fName = ) this.FunctionName = this.GetParaValue(FunctionName); this.FunName = this.FunctionName;

45、 else this.FunName = fName; this.FunctionName = fName; this.EmpName = this.GetParaValue(name); if (EmpName = null | EmpName = ) FormsAuthentication.SignOut(); Response.Clear(); if (File.Exists(Server.MapPath(Login.aspx) Response.Redirect(Login.aspx, false); else Response.Redirect(./Login.aspx, false

46、); Sqlcon.cs:該類為數(shù)據(jù)庫連接類,連接數(shù)據(jù)庫,對數(shù)據(jù)庫進行操作;代碼如下:namespace abc public class sql public sql() / / TODO: 在此處添加構(gòu)造函數(shù)邏輯 / public SqlConnection dbcon()/數(shù)據(jù)庫連接; string con = Data Source=.;Initial Catalog=JWGL;User Id=sa;Password=; SqlConnection conn = new SqlConnection(con); return conn; public string Loginon(str

47、ing username, string pwd, string identity,ref string grade,ref string xueming)/身份驗證; string massage; string str; SqlConnection scon=dbcon(); scon.Open(); try if (identity = 0) str = select * from student where stuID= + username + and password= + pwd + ; SqlCommand cmd = new SqlCommand(str, scon); Sq

48、lDataReader reader = cmd.ExecuteReader(); if (reader.Read() = true) xueming = readerstuname.ToString(); grade = readergrade.ToString(); massage = 1; else massage = 0; reader.Close(); else str = select * from teacher where teaName= + username + and password= + pwd + ; SqlCommand cmd = new SqlCommand(

49、str, scon); SqlDataReader reader = cmd.ExecuteReader(); if (reader.Read() = true) grade = readergrade.ToString(); massage = 1; else massage = 0; reader.Close(); catch (Exception error) massage = error.Message.ToString(); scon.Close();return massage; Login.aspx:主要是身份驗證,判斷是否是合法用戶,合法那么進入教務(wù)管理系統(tǒng)否那么禁止訪問該系

50、統(tǒng)圖15 登陸界面代碼如下13: protected void Page_Load(object sender, EventArgs e) protected void Button1_Click(object sender, EventArgs e) string xueming=; string grade=; string name = this.TextBox1.Text; string pwd = this.TextBox2.Text; string shengfen = this.Select1.SelectedIndex.ToString(); string a = (new s

51、ql().Loginon(name, pwd, shengfen,ref grade,ref xueming); if (a =1) Sessionshengfen = shengfen; Sessiongrade = grade;/班級 Sessionname = name;/如果是老師為名字;如果是學生為學號 Sessionxueming = xueming;/如果是老師為空;如果是學生為名字 Response.Redirect(Default.aspx); else this.Label1.Text = 用戶名或密碼錯誤; 主界面default.aspx為一個模版,其中top.aspx,

52、frame.aspx,bottom.aspx。其中top.aspx為頭,bottom.aspx為底版,frame.aspx為內(nèi)容頁面其中,當加載主界面時候,gonggao.aspx.frame.aspx代碼:namespace jwgl public partial class frame : pagebase string url; protected void Page_Load(object sender, EventArgs e) PageBegin(frame); url = gonggaotongzhi/gonggao.aspx; this.RdlFrame.Attributes.

53、Add(src, url); this.Label1.Text = 公告通知:; this.Label2.Text = Sessionname.ToString(); this.Label3.Text = Sessionxueming.ToString(); protected void ImageButton1_Click(object sender, ImageClickEventArgs e) url = gonggaotongzhi/gonggao.aspx; this.RdlFrame.Attributes.Add(src, url); this.Label1.Text = 公告通知

54、:; protected void ImageButton2_Click(object sender, ImageClickEventArgs e) url = gerenkebiao/kechengbiao.aspx; this.RdlFrame.Attributes.Add(src, url); this.Label1.Text = 個人課表:; protected void ImageButton3_Click(object sender, ImageClickEventArgs e) url = chengjichaxue/chengjichaxun.aspx; this.RdlFra

55、me.Attributes.Add(src, url); this.Label1.Text = 成績查詢; protected void ImageButton4_Click(object sender, ImageClickEventArgs e) url = xuanke/xuanke.aspx; this.RdlFrame.Attributes.Add(src, url); this.Label1.Text = 學生選課; 圖16 課表界面代碼如下:namespace jwgl public partial class kechengbiao : pagebase public stat

56、ic int j = 0; protected void Page_Load(object sender, EventArgs e) PageBegin(gerenkebiao); if (!IsPostBack) ddlbind(); dvbind(); private void ddlbind() DataView dv = new DataView(); dv = (new sql().gettime(); this.DropDownList1.DataSource = dv; this.DropDownList1.DataValueField = id; this.DropDownLi

57、st1.DataTextField = nowtime; this.DropDownList1.DataBind(); private void dvbind() string time = DropDownList1.SelectedItem.Text.ToString(); DataView dv = new DataView(); dv = (new sql().kechengbiao(time,Sessiongrade.ToString().DefaultView; PagedDataSource ps = new PagedDataSource(); ps.DataSource = dv; this.GridView1.DataSource = ps; GridView1.DataBind(); this.GridView1.GetType(); /GridView1.DataBind(); protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) dvbind(); pro

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論