2013-03-09 75 views
0

我想在測試系統中創建一個問題模型。 這個問題可能會有所不同(包括文字,圖片等) 答案可能不同(textfield,checkboxes等)在MVC中實現多狀態模型

如何在MVC中正確實現這個?

Picture for understanding

+0

可以使問題更具體?該模型幾乎獨立於MVC模式。 – 2013-03-09 18:28:44

+0

模型是一個圖層,而不是一個對象。 – 2013-03-10 09:22:47

回答

0

業務/域對象:

public class Question { 
    public int Id { get; set; } 
    public string Text { get; set; } 
    public string ImagePath { get; set; } 
    public IList<Answer> Answers { get; set; } 
    public Answer CorrectAnswer { get; set; } 
} 

public class Answer { 
    public int Id { get; set; } 
    public string Text { get; set; } 
} 

視圖模型:

public class QuestionViewModel { 
    public Question Question { get; set; } 
} 
+0

你會如此友善地添加一些描述代碼的文本嗎? – 2013-03-09 18:26:09

+0

謝謝。這很不錯,但可擴展性如何?例如,我需要一種新的答案:「第二次世界大戰。輸入日期範圍。」 [textfieldStart] - [textfieldEnd](兩個答案字段,不是一個) – BadEnglish 2013-03-09 20:44:45

+0

這是什麼'Question.Answers'是爲...你可以顯示n個答案。雖然,只有一個'CorrectAnswer'。如果有多個正確答案,那麼創建一個'CorrectAnswers'作爲'Question'成員的列表。 – xandercoded 2013-03-09 20:49:46