999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ASP.NET的選課管理系統開發與研究

2009-04-29 00:00:00楊文彬
電腦知識與技術 2009年33期

摘要:該文進行了基于ASP.NET的選課管理系統的設計與開發,包括選課管理系統的功能需求分析,系統客戶端經由服務器訪問數據庫中的數據。學生選課時課程的成績均為0,當課程結束后,教師登錄本系統給所有學生評分,學生再次瀏覽此頁面可查看到課程的成績,若成績合格,學生可獲得對應課程的學分。同時,服務器端嚴格按照管理原權限進行管理,高級管理員可對管理員數據進行維護。

關鍵詞:選課;管理系統;ASP.NET

中圖分類號:TP315 文獻標識碼:A文章編號:1009-3044(2009)33-9576-03

According to the Research of the ASP.NET Technical Elective Management System

YANG Wen-bin

(Taiyuan Normal University, Taiyuan 030012, China)

Abstract: This text carried on selecting elective courses the design and development of manage the system according to the ASP.NET, including function request analysis of select elective courses the management system, system the customer carry through the data in the server interview database.In the meantime, the server carries strictly original legal power to carry on a management according to the management, the deluxe managing person can carry on a maintenance to managing person's data.

Key words: select courses; sanage systeml; ASP.NET

1 開發平臺ASP.NET概述

在系統的開發上,采取目前比較流行的ASP.NET服務器端腳本編程環境。它是建立在.NET Frame之上,使用Visual Basic、C++這樣模塊化程序設計語言,并且它要第一次使用時進行編譯,之后的執行不需要重新編譯就可以直接運行,所以速度和效率比ASP提高很多。同時它還具有代碼的可重用性、可維護性和代碼量相對較少等諸多優點。ASP.NET不僅僅是下一版本的Active Server Page(ASP);它是統一的Web開發平臺,用來提供開發人員快速生成企業級Web應用程序,所需的服務ASP.NET的語法在很大程度上與ASP兼容。由于ASP本身的局限性使得系統有一些不可克服的缺陷,而采取了ASP.NET技術的系統性能上有了很大的改善:

1) ASP.NET頁面只需要一次編譯后不需要重新編譯,直到該頁面被修改或WEB應用程序重新啟動,極大提升多次訪問時的速度;

2) ASP.NET通過ADO.NET提供的DataGrid等數據庫元件可以直接和數據庫聯系;

3) ASP.NET采取“code-behind”方式編寫代碼使得代碼易于編寫,結構更清晰,降低了系統的開發與維護的復雜度和費用。同時它還提供一種新的編程模型和結構,用于生成更安全,可伸縮和穩定的應用程序。

2 選課管理系統的功能需求分析

1) 系統管理員

設置選課時間段:系統管理員通過此項功能設置選課時段,只有在選課時間段里,學生才可以選擇課程,超過次時間段,學生選課信息被自動所定,不得修改。

錄入學生與教師個人信息:通過此項功能可以實現對教師和學生的個人信息添加刪除。

錄入教學樓教室信息:通過此項功能可以把學校里所有的教學樓教室的信息錄入到系統中,以便教師在開設課程時候設置上課的教室。

2) 教師用戶

顯示和修改個人信息:教師用戶登錄系統后,可以查看和修改教師的個人信息,如姓名,電話,E-mail地址等。

開設課程:教師用戶登錄系統后,可以開設課程,可以設置該課程為必修課程或則選修課程,可以設置該課程的最大人數。教師還可以為該課程設置一個前導課程,若學生沒有學習或則選擇前導課程則不能選擇該課程。

編輯課程上課時間:教師在開設了課程后,可以靈活地設置上課時間和地點。

給學生分數:課程結束后,教師用戶登錄系統,可以為學過課程的學生給予相應的成績,若及格,給予學生學分。

3) 學生用戶

顯示和修改個人信息:學生登錄系統后,可以查看和修改學生的個人信息,如姓名,性別,電話等。

查看必修課程:學生登錄后,可以查看所有的必修課程。查看該課程的信息,上課時間地點,開課教師信息等。

選擇選修課程:學生登錄系統后,在所有選修課程中可以選擇至少兩門選修課程。同時可以查看相關信息。

鎖定選課信息:學生登錄系統,確定了所選課程后,可以鎖定自己的選課信息,以防被別人或則自己不小心修改。

查看最終選課信息:學生登錄系統后,可列出已選擇的課程,若選課信息未被鎖定,則可以退選,若所選課程少于兩門,系統會提示選擇的課程少于兩門。

查看學分和成績:課程結束后,學生登錄系統可查看自己學習課程的成績和已獲的學分。

3 選課管理系統的系統設計

3.1 數據模型設計

1) 登陸模塊的數據流程:管理員在ASP.NET生成的界面輸入登陸信息,然后點擊〔登陸〕按鈕,由服務器端程序向數據庫發出驗證請求,數據庫返回驗證結果,由服務器端程序生成驗證結果消息框。

2) 添加管理員模塊的數據流程:高級管理員在ASP.NET生成的界面輸入所要添加管理員的信息(用戶名,密碼,確認密碼),然后點擊〔確定〕按鈕由服務器端程序向數據庫發出驗證請求,數據庫返回添加結果,由服務器端程序生成添加結果消息框。

3) 操作管理模塊的數據流程:①添加用戶模塊的數據流程:管理員在.NET Windows Forms生成的界面輸入所要添加用戶的信息(學號,姓名,班級,密碼,確認密碼),然后點擊〔確定〕按鈕由服務器端程序向數據庫發出驗證請求,數據庫返回添加結果,由服務器端程序生成添加結果消息框。②刪除用戶模塊的數據流程:管理員在.NET Windows Forms生成的界面選中所要刪除用戶用戶名,然后點擊〔確定〕按鈕由服務器端程序向數據庫發出刪除請求,數據庫返回刪除結果,由服務器端程序生成刪除結果消息框。③修改用戶密碼模塊的數據流程:管理員在.NET Windows Forms生成的界面輸入所要修改用戶信息(學號,原密碼,新密碼,確認新密碼),然后點擊〔確定〕按鈕由服務器端程序向數據庫發出修改請求,數據庫返回修改結果,由服務器端程序生成修改結果消息框。

4) 查看當前上機狀態模塊的數據流程:學生在客戶端輸入上機信息(學號,密碼)單擊[確認]按鈕后登陸客戶端,客戶端將用戶信息通過服務器端存儲至數據庫Online表中,當管理員單擊查看當前上機狀況模塊按鈕時由服務器端程序向數據庫發出查看Online請求,數據庫返回Online表值(當前在線用戶信息),由服務器端程序生成上機狀況結果消息框。

5) 日志管理模塊的數據流程:①查看管理員日志模塊的數據流程:所有系統管理口志在管理員操作時已經通過服務端程序存儲至數據庫中的Manage log表中,管理員單擊管理員日志按鈕,由服務器端程序向數據庫發出查看管理員日志請求,數據庫返回Manage log表中的值,由服務端程序生成日志消息框。②查看用戶日志模塊的數據流程:所有用戶操作日志在用戶登陸客戶端時已經由客戶端通過服務端程序存儲至數據庫中的User log表中,管理員單擊用戶日志按鈕,由服務器端程序向數據庫發出查看用戶日志請求,數據庫返回User log表中的值,由服務端程序生成日志消息框。

3.2 數據庫設計

該系統采用的是SQL SEVER2000數據庫,該系統的數據庫主要由學生信息表(student),管理員信息表(teacher),在線用戶信息表(online),管理員日志信息表(managelog)和用戶日志信息(userlog)表組成。student表記錄了所有關于用戶的信息,teacher表記錄了所有關于管理員的信息,Online表記錄了所有當前在線上機的用戶信息,managelog表記錄了管理員操作口志的所有信息,userlog表記錄了所有上機用戶的上機信息。在服務器端主程序中定義了一個DataConn類,在這個類中構造了execute()方法和getData()。當用戶觸發了向數據庫存儲(刪除,更新)信息的事件模塊時,那么這個事件就會調execute()方法,該方法會請求與數據庫連接,若連接成功execute()方法會向數據庫存儲(刪除,更新)相應的數據。當用戶出發了向數據庫查詢信息的事件模塊時,該事件會調用getData()方法向數據庫發出查詢數據請求,數據庫會返回所要查詢的數據或存儲結構。

1) 上機用戶表(student表):用戶表是客戶端用戶上機登陸的時候所用到的表,主要記錄用戶登陸名,密碼,姓名,班級,此表以用戶名作為主鍵,同時也是外鍵,通過這個字段與其他關聯表進行通信。如表1所示,描述了student表的詳細信息。

2) 管理員表(teacher表)

管理員表是管理員登陸服務器端主系統所要用到的表,主要記錄管理員用戶名和登陸密碼,此表以管理員用戶名作為主鍵,同時也是外鍵,通過這個字段與其他關聯表進行通信。

3) 在線用戶信息表(Online)

在線用戶信息表是顯示當前在線上機用戶信息的表,此表以上機用戶的用戶名為主鍵,同時也是外鍵,通過這個字段與其他關聯表進行通信。

4) 管理員日志信息表(managelog表)

顯示記錄管理員所進行的所有操作的表,此表以管理員用戶名為主鍵,同時也是外鍵,通過這個字段與其他關聯表進行通信。

5) 用戶日志信息表(userlog表)

用戶日志信息表是顯示記錄用戶所進行的所有操作的表,此表以上機用戶用戶名為主鍵,同時也是外鍵,通過這個字段與其他關聯表進行通信。如表2所示,描述了userlog表的詳細信息。

4 系統運行

管理員登錄的頁面提供兩個文本輸入框(分別用于用戶名和密碼的輸入),一個登陸按鈕,一個取消登陸按鈕,當用戶輸入用戶名和密碼,點擊登陸按鈕時,事件發生的順序如下:

1) 首先該事件會調用UserExist(),該方法首先通過調用DataConn類中的getData()向數據庫查詢所輸入的用戶名是否存在,如果存在那么密碼是否相等,如果用戶名不存在,則UserExist()方法返回值為-1,若用戶名存在但返回密碼與輸入密碼不相等UserExist()方法返回值為0,若用戶名和密碼均一致那么UserExist()方法返回值為1。

2) 若UserExist()方法返回值為-1,登陸模塊程序會向用戶發出不存在該用戶的消息框。

3) 若UserExist()方法返回值為0,登陸模塊程序會向用戶發出密碼不正確的消息框。

4) 若UserExist()方法返回值為1,系統會告知用戶登陸成功,用戶直接進入系統主操作界面。

成功登陸系統后,在“用戶類型”下拉列表框中選擇“學生”,單擊“登錄”按鈕,登錄選課系統。

進入學生主頁,點擊“必修課程”鏈接,得到所有必修課程的列表,在列表中可以看到所有必修課程及課程的簡單信息,如授課教師姓名、課程所占學分等。在列表中可以點課程名稱,如“計算機應用基礎”鏈接,查看課程詳細信息;點教師姓名,如“李萍”鏈接,查看教師的詳細信息;點擊“查看上課時間地點”鏈接,查看對應課程的上課時間和地點。在頁面加載的時候從數據庫讀取所有必修課信息,代碼如下:

string sql = \"select Course.*,TName from Course,Teacher where CType like '必修' and Course.TId like Teacher.TId\";//查詢處所有必修課程信息

DataSet ds = Db.ExecuteSelectSql(sql);

if ( ds != 1 ds.Tables.Count > 0 )

{

dgCourse.DataSource = ds.Tables[0];

dgCourse.DataBind();//將查詢結果綁定到DataGrid中

}

單擊“選修課程”鏈接,查看所有選修課程列表,在列表中給出了比必修課程更多的信息,比如多了對應選修課程的前導課程、最大人數、當前已選人數等,對每個選修課程均有一個“選修該課程”的按鈕,單擊此按鈕方可選擇對應課程。主要代碼如下:

string sql = \"select x.*,TName,(select CName from Course as y where y.CId = x.CPreCId) as CPreCName from Course as x,Teacher where x.CType like '選修' and x.TId like Teacher.TId\";

//查詢該學生已選修的課程

DataSet ds = Db.ExecuteSelectSql(sql);

if ( ds != 1 ds.Tables.Count > 0 )

{dgCourse.DataSource = ds.Tables[0];

dgCourse.DataBind();

for ( int i = 0; i < ds.Tables[0].Rows.Count; i++ )

{ql = \"select count(*) from SC where CId = \"+ds.Tables[0].Rows[i][\"CId\"].ToString();

DataSet ds1 = Db.ExecuteSelectSql(sql);

if ( ds1 != 1 ds1.Tables.Count > 0 ds1.Tables[0].Rows.Count > 0 )

dgCourse.Items[i].Cells[6].Text = ds1.Tables[0].Rows[0][0].ToString();}}

bool locked= bool.Parse(Session[\"Locked\"].ToString());

if ( ! locked )

{lbLock.Text = \"您尚未鎖定選課信息!\";}

else

{lbLock.Text = \"選課信息已被鎖定!\";

dgCourse.Columns[9].Visible = 1;}

在選修課程的列表中,選擇“計算機密碼學”、“計算機圖形學”、“線性代數”三門課程后,點擊“已選課程”鏈接查看已經選擇的課程列表,在列表中除了可以看到與上一步中相同的信息外,還可以查看到課程成績。剛才選擇的三門課程的成績均為0,當課程結束后,教師登錄本系統給所有學生評分,學生再次瀏覽此頁面可查看到課程的成績,若成績合格,學生可獲得對應課程的學分。

5 結論

該文研究了基于ASP.NET的選課管理系統,系統服務器可以對客戶端信息進行實時監控和管理,同時將上機者信息以及操作載入數據庫保存;服務器端通過對管理員身份驗證使其可以進入管理界面進行管理,實現刪除添加管理員和用戶,遠程監控等功能。該系統基本實現了選課的設計功能,運轉正常,單位對該系統的操作簡便、簡化手工操作給了很高的評價。

參考文獻:

[1] 梅中輝,經亞枝.NET技術中的數據訪問技術—ADO.NET[J].微計算機信息,2003,19(1):47-48.

[2] 李瑜波,童燕青.計算機開放實驗室的實現目標和管理措施[J].實驗技術與管理,2003(10):137-140.

主站蜘蛛池模板: 国产精品女人呻吟在线观看| 欧洲一区二区三区无码| 久久精品亚洲专区| 精品小视频在线观看| 中文字幕在线免费看| 欧美精品亚洲精品日韩专区| 无码一区18禁| 无码电影在线观看| 美女被操91视频| 韩国福利一区| 欧美中文字幕一区| 免费国产高清视频| 亚洲欧美日韩另类在线一| 亚洲成人网在线播放| 色妞永久免费视频| 亚洲第一中文字幕| 毛片基地视频| 亚洲国产成熟视频在线多多| 激情国产精品一区| 亚洲天堂免费| 亚洲天堂网在线视频| 国产性猛交XXXX免费看| 在线观看亚洲天堂| 成人免费网站久久久| 欧美精品伊人久久| a毛片免费观看| 国产探花在线视频| 99在线小视频| 全部无卡免费的毛片在线看| 亚洲人成电影在线播放| 97免费在线观看视频| 91精品在线视频观看| 亚洲欧洲日产国产无码AV| 99re免费视频| 国产精品理论片| 好紧好深好大乳无码中文字幕| 亚洲AⅤ综合在线欧美一区 | 激情六月丁香婷婷四房播| 亚洲一区二区三区香蕉| 久视频免费精品6| 国产情侣一区二区三区| 国产亚洲精| 国产不卡一级毛片视频| 色老二精品视频在线观看| 欧美精品H在线播放| 一本大道香蕉久中文在线播放| 蜜芽国产尤物av尤物在线看| 亚洲最大福利视频网| 国产成人狂喷潮在线观看2345| 精品剧情v国产在线观看| 最新国产网站| 亚洲中文字幕无码爆乳| 国产成人精品高清不卡在线 | 国产精品三级av及在线观看| 毛片网站免费在线观看| 视频一本大道香蕉久在线播放| 亚洲人成网7777777国产| 欧美国产日产一区二区| 欧美综合区自拍亚洲综合绿色| 国产香蕉国产精品偷在线观看| 国产美女一级毛片| 波多野结衣国产精品| 五月激情婷婷综合| 国内熟女少妇一线天| 国产成人综合久久精品下载| 欧美综合一区二区三区| 国产高颜值露脸在线观看| 中文字幕无码制服中字| 国产成人精品18| 老司国产精品视频| 国产黄网站在线观看| 日韩精品欧美国产在线| 亚洲动漫h| 国产婬乱a一级毛片多女| 亚洲欧洲日产国码无码av喷潮| 日韩欧美国产另类| 蝌蚪国产精品视频第一页| 欧美成人午夜视频| 视频一区亚洲| 国产一级二级三级毛片| 久久人体视频| 亚洲精品国产精品乱码不卞|