freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

駕校理論考試模擬系統(tǒng)—畢業(yè)設計論文-在線瀏覽

2025-02-03 16:03本頁面
  

【正文】 Int 用戶所屬的角色 2.角色表( Roles) 角色表用于存儲用戶的角色信息。 表 2 Roles表字段說明 編號 字段名稱 字段類型 字段說明 1 UserID Int 用戶表主鍵 2 UserName Varchar(50) 用戶名稱 3.考生表( Examinees) 考生表存儲參加考試的考生信息,該表引用了用戶表 Users 的主鍵 UserID作為該表的外鍵。該表引用問題種類表 QuestionKinds 的KindID、圖片表 Pictures 的 PictureID、用戶表 Users 的 UserID 作為表的外鍵。 表 3 Questions表的字段說明 編號 字段名稱 字段 類型 字段說明 1 QuestionID Int 問題表主鍵 2 Title Varchar(200) 問題內容 3 Pubdate Datetime 添加到題庫的時間 4 KindID Int 問題類型 ID 5 PictureID Int 問題圖片 ID 6 Difficult Int 問題的章節(jié) 7 Mark Int 考試成績 5.問題種類表( QuestionKinds) 問題種類表存儲問題種類的信息。 表 4 QuestionKinds表的字段說明 編號 字 段名稱 字段類型 字段說明 1 UserID Int 用戶表主鍵 第 6 頁 共 25頁 2 UserName Varchar(50) 用戶名稱 6.問題答案表 (Answers) 問題答案表存儲題庫中問題的答案信息,該表引用問題表 Questions 的QustionID 作為表的外鍵。 表 5 Answers表的字段說明 編號 字段名稱 字段類型 字段說明 1 AnswerID Int 問題答案表主鍵 2 Title Varchar(4) 標題 3 Body Varchar(200) 問題的選 項 4 AnswerBody Varchar(4) 問題的正確答案 5 QuestionID Int 答案所屬問題的 ID 7.圖片表( Pictures) 圖片表存儲系統(tǒng)的圖片信息。 表 6 Papers表的字段說明 編號 字段名稱 字段類型 字段說明 1 PaperID Int 角色表主鍵 2 TotalMark Int 試題總分數 3 MinDefficult Int 問題開始章節(jié) 4 maxDefficult Int 問題結束章節(jié) 5 UserID Int 創(chuàng)建此試卷的用戶 ID 6 RoleID Int 考生的角色 9.試卷類型表( PaperKinds) 試卷類型表存儲每一套試卷的詳細信息,試卷表 Papers 的 PaperID 作為表的外鍵。 第 7 頁 共 25頁 圖 4 數據庫關系圖 Papers 表只是一個關系表,它由試題種類及試卷的各種參數構成,管理員可以動態(tài)設計每套試卷包含的試題種類,考生根據自 己的角色從該表中隨機選擇某種試題類型,然后再隨機生成試卷。角色表中的RoleID 字段決定考生使用什么類型的試卷,試卷表中的 KindID 字段標識試卷組成的試題種類,該字段和試卷種類表相關聯。 5 系統(tǒng)詳細設計 5. 1 系統(tǒng)通用類設計 在應用程序開發(fā)過程中多處使用類,如數據庫通用類、應用數據通用類。該類定義 了 函數 MyException()重載基類的函數 Exception(),同時還繼承基類的message 和 inner 兩個變量。 5. 1. 2 應用數據通用類設計 應用程序使用類 QuestionKinds 臨時存儲試題種類及其數量信息。 //QuestionKinds主要是存儲問題種類以及 該種類試題的數量 public class QuestionKinds 第 8 頁 共 25頁 { public int KindID。 } 5. 1. 3數據庫通用類設計 類 SQLHelper用來封裝訪問數據庫庫的某些基礎屬性的函數,如數據庫連接字符串、緩沖數據庫參數的 Hash表、添加數據庫的參數等,應用程序的數據訪問層都基于該類。函數 AddMyCommandParams()是添加 SqlCommand() 對象 的參 數, 函數 AddDataAdpterParam()則 是添 加SqlDataAdapter對象的參數。如果參數值為空,則要重新構造數據庫參數并添加到 Caching對象中,當再次需要獲取參數時,只要從 Caching對象中獲取即可。用戶登錄是應用程序的主要入口,用戶只有通過該入口才能進入系統(tǒng)。 用戶登錄使用了兩個 TextBox控件作為輸入名稱和密碼,用戶單擊“確定”按鈕就可以登錄到系統(tǒng)。 用戶的角色是從 Roles表中獲取的,考生為默認角色。 兩個非空驗證控件僅僅對“確 定”按鈕有效,其 實現方法就是把“注冊”控鈕的屬性 CausesValidation值設為 False。如果考生登錄,顯示生成等待頁面和在線答題頁面;如果管理登錄,顯示題庫頁面;如果系統(tǒng)管理員登錄,則顯示系統(tǒng)維護頁面。 用戶單擊“確定”按鈕觸發(fā)事件 SureBtn_Click()來 實現用戶登錄驗證過 程。否則頁面 將 彈出錯誤信息的提示。 為了整個系統(tǒng)的安全性,在用戶表 Users中的存儲用戶的密碼 Password字段不是用戶密碼的真實值,而是加密后的密碼字符串。調用加密函數時,首先把加密字 符串編碼成 Uncode,然后使用系統(tǒng)的不對稱加密算法 MD5加密用戶密碼串。因為具有管理員角色的用戶可以直接進入到系統(tǒng)后臺進行管理。 前 三個控件都用了驗證控件和一個正則表達式 , 電子郵箱 則 使用格式驗證。 SureBtn_Click()事件調用函數AddUser(),AddUser()調用存儲過程 Pr_AddUser添加新用戶信息到 Users中。 5. 3 用戶 及其權限管理 5. 3. 1用戶管理 系統(tǒng)管理員可以對 用戶管理和 用戶 角色 分配 管理等功能,此功能的關系圖 5所示。界面設計如圖 6所示: 圖 6 用戶管理及角色管理 用戶列表框顯示系統(tǒng)當前包含 的 所有用戶,系統(tǒng)管理員單擊“ X”按鈕即可刪除當前列表框被選中的用戶。 用戶管理頁面初始化時,調用 BindData()實現綁定用戶列表控件,該函數調用數據訪問層UserDB類的函數 GetUser()從用戶表中獲取用戶和用戶 ID等數據。該 事件調用數 據訪問層 UserDB類的函數DeleteUser()刪除數據庫中的用戶記錄。 單擊添加 “ /” 按鈕實現實現用戶添加功能,此按鈕為圖像按鈕,單擊此按鈕觸發(fā)事件 AddBtn_Click()。添加后事件重新綁定用戶數據。系統(tǒng)存在角色較多,不同的角色具有不同的操作權限。用戶角色管理由頁面 。函數 BindRoleData()調用數據訪問層的 RoleDB類的函數 GetGetRoles()從 表中獲取用戶數據,然后再綁定數據到角色列表控件。 用戶單擊“設為該用戶的角色”按鈕觸發(fā)事件,該事件實現用戶角色之間的關聯功能,事件調用函數 UpdateUserRole()修改用戶表的角色字段值。 單擊“確定”后 觸發(fā)事件 SureBtn_Click().先判斷新密碼的兩次輸入是否一致。 此函數獲取用戶的名稱,用戶只能修改自己的密碼,不能更改名稱。 5. 4. 1試題種類管理 試題 種類管理由頁面 ,試題種類管理實 現了試題種類的添加、修改、排序和刪除功能。試題類別管理使用函數 BindQuesKindData(),該函數首先從 QuestionKinds表中獲取試題的種類數據,然后再把數據綁定到列表控件。 單擊“↑”“↓”“∕”、“ X”按鈕 都屬于 ImageButton類型按鈕,在此使用同一個函數 MoveEdit_Click()實現所有按鈕的單擊事件,該函數通過參數CommandName區(qū)別是那個按鈕觸發(fā)的事件,然后再使用 switch語句調用不同的操第 12 頁 共 25頁 作函數。函數 UpdateQuesKindName()從試題種類表 QuestionKinds中獲取修改前試題種類名稱,并顯示在網頁上,函數 UpdateBtn_Click()修改試題的種類名稱。 5. 4. 2試題圖片管理 試題圖片管理由頁面 ,試題圖片管理主要實現圖片的添加、刪除、修改等功能。圖片都是上傳到系統(tǒng)的一個文件夾中,顯示圖片的時候都是從數據庫獲取該圖片的路徑,然后在顯示在頁面上。單擊“ /”、“ X”此按鈕即可修改圖片信息和刪除圖片。 添加試題頁面使用函數 BindQuesKindData(),該函數首先從 QuestionKinds表中獲取試題種類的數據,然后再把數據綁定到列表控件。 用戶單擊“確認提交”按鈕觸發(fā)事件 AddNewQuestion_Click(),該事件添加試題,在添加時獲取問題 ID和圖片 ID就可以成功的添加一道新的試題。修改試題頁面 調用函數 Page_Load()綁定試題種類、試題圖片和被修改問題。 用戶單擊“確認修改”按鈕觸發(fā)事件 UpdateQuestion_Click()實現試題的修改功能。 5. 4. 5刪除試題 刪除試題功能由頁面 , 刪除試題和修改試題實現有很多相同之處。 5. 4. 6試題答案設計 試題答案和試題是不可分割的,在此系統(tǒng)中,每個試題都有三個答案與之對應,只一個正確答案。在下拉列表選擇框中顯示試題種類,在普通列表框中顯示試題,單擊“添加試題答案”按鈕跳轉到答案添加頁面 。 函數 BindQuesKindData()綁定下拉列表控件的數據,如試題種類。該函數調用數據訪問層 QuestionDB類的 GetQuestions()函數從表 Questions中獲取試題信息。如果已經選擇,則跳轉到試題答案添加頁面,否 則系統(tǒng) 將 提示你沒有選擇數據。} 事件 QuesKindList_SelectedIndexChanged()動態(tài)綁定試題列表框的數據,如試題名 稱,當試題類型下拉列表框選中的選擇試題種類發(fā)生改變時觸發(fā)該事件,此時頁面會重新綁定列表中的試題數據。 } 5. 4. 7試題答案添加 試題答案添加頁面 添加試題答案功能。如果是判斷題,只要輸入“正確”或“錯誤”即可。添加試題答案頁面的初始化函數 Page_Load()調用數據訪問層的函數從表 Questions獲取試題的信息。 用戶單擊“確認提交”按鈕 觸發(fā)事件 AddAnswerBtn_Click(),該事件 將 添加試題的答案。在添加過程中,系統(tǒng)默認第一個輸入框為“ A”,第二個輸入框為“ B”,每三個輸入框標題為“ C”,最后一個是正確的答案。函數代碼如下: private void AddAnswerToDB(int nQuestionID,String sTitle,String sBody,String sAnswerBody) { AnswerDB answer = new AnswerDB()。 } 5. 4. 8試題答案修改 修改試題的答案由 ,界面同添加試題答案相似。它調用數據訪問層 QuestionDB類的函數 GetSingleQuestion()從表 Questions獲取問題信息。 用戶單擊“確認修改”觸發(fā)事件 UpdateAnswer_Click(),此事件是把剛剛修改的重新保存到數據庫中。 5. 4. 9試題答案刪除 刪除試題答案功能由頁面 ,刪除試題答案同修改試題答案相似,如綁定所有的數據項。 第 15 頁 共 25頁 private void UpdateAnswer_Click(object sender, e) { AnswerDB answer = new AnswerDB()。 } 5. 5試卷設計 5. 5. 1添加新試卷 添加新試卷由 。 添加新的試卷頁面調用函數 Page_Load()綁定試題種類,每一種類型有多少試題,該類型的試題總分數是多少。該函數首先從問題類型中獲取類型,再得出此類型的部分分數和試題數量。 單擊“確認提交” 按鈕觸發(fā)事件 AddPaperBtn_Click(),即把設置的數據全部寫到數據庫 ,事件代碼如下: private void AddPaperBtn_Click(object sender, e) { PaperDB paper = new PaperDB()。 ArrayList aKindList = new ArrayList()。} nPaperID = (TotalMark,MinDefficult,MaxDefficult, (Session[UserID].ToString()),3)。}} 5. 5. 2修改 試卷 修改試卷功能由 ,其界面同添加新試卷相似。然后綁定到控件上, BindPaperListMData(( Value))函數根據 BindPaperListData()獲得相應的 PaperID,再根據 PaperID獲取試卷表 Papers中的相關數據綁定到各個控件上。 5. 5. 3刪除 試卷 刪除 試卷功能由頁面 ,該頁面顯示系統(tǒng)中共有多少套第 16 頁 共 25頁 試 卷 , 然 后 選 擇 其 中 的 一 套 試
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1