我在 MVC3 下做了一些网页,但我对为问卷生成 HTML 控件的最佳方式感到困惑。
我想有2种方法:
- 通过代码生成带有控件等的原始 html。(我的意思是
sb.Append("<input id='bla' class='bla' />") and etc..
Sample is here) - 通过发送完整的
model
然后foreach
在 HTML 代码中放入一些
model
您能否建议哪种方式更好,然后(通过或)我必须如何获得答案FormCollection
?
这是我的循环草稿(还没有其他东西......)
var qs = db.SN_Questionnaires.Where(q => q.Code == 1).FirstOrDefault();
foreach (var questionGroup in qs.SN_QuestionGroups)
{
foreach (var question in questionGroup.SN_Questions)
{
var questionType = db.SN_QuestionTypes.Where(qt => qt.ID == question.SN_QuestionTypeID).FirstOrDefault(); // Get type of the control here (TextBox, Radio, and etc)
foreach (var answer in question.SN_Answers)
{
}
}
}