[英]Design help for a Online Questionnaire /Exam Application
我正在開發一個處理在線檢查的網絡應用程序。 要求是:
我正在尋求社區投票,有人會如何設計應用程序以滿足所有這些標准? 應該使用哪些模式? 哪些組件可以幫助減少開發時間等。
我的技術堆棧是C#,ASP.NET MVC或帶有SQL Server的ASP.NET。
提前致謝!!!
您應該查看一個解決方案,例如開源DotNetNuke,並購買/構建特定於您的方案的部分的擴展,而不是重新發明輪子。
我認為對於用戶應用程序,您應該考慮使用Silverlight應用程序,因為這將為您提供對體驗的精確和安全控制。
總的來說,解決方案是這樣的:
總的來說,這樣的解決方案可以讓您高度控制用戶體驗,同時使您能夠專注於特定於您的情況的時間/資源,同時利用現有的,強大且流行的解決方案來構建您的解決方案。
(完全披露:我是管理DotNetNuke公司的聯合創始人之一。公平地說,你可以用Orchard或Umbraco取代我對DotNetNuke的建議,解決方案同樣有效。)
對於數據庫方面你需要的東西:
Table Exams (ExamID, ExamName) //to hold all exams
Table Users(UserID, Username, Login, Password) //to hold all users
Table OpenExams(Exam_ID, User_ID) //to hold open exams
Table ExamSections(SectionID, Exam_ID, SectionName) //to hold sections of exams
Table Questions(QuestionID, Section_ID, QuestionName, Question, Answer) //to hold questions
這當然是最基本的,只有很多方法。 您需要在需要時添加字段。
對於第2項,我可能會在應用程序層(或VS)中執行此操作。 我在web開發方面沒有太多經驗,但我認為ASP可以解決這個問題。 對於第3項,如果嘗試訪問考試的用戶當前正在參加考試,您可以運行一個簡單的SQl語句。
讓我們也開始映射進程:用戶:1。用戶登錄(以防止一個用戶進行多次檢查)。 2.用戶“開始”檢查 - >在服務器端記錄時間,在客戶端觸發定時器。 用戶獲得動態考試頁面1. 3.用戶完成第1頁,點擊下一步 - > Ajax-重新加載頁面內容(問題部分)。 啟動第2頁的計時器(服務器和客戶端)3.a)檢測到來自不同IP的登錄 - 會話中斷,用戶標記為騙子:)或者只是拒絕登錄。
這需要大量的工作,但是當你擁有它時,你就會知道你需要在設計中加入什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.