Asp.net mvc 4 MVC4调查Web应用程序的结构
我正在尝试使用MVC架构为一个调查应用程序找出模型结构。实际上,这是一个更大的网络应用程序中的问答部分。我有大约120个问题,它们都有固定的答案选项,没有书面答案。目前我有3个表:Asp.net mvc 4 MVC4调查Web应用程序的结构,asp.net-mvc-4,viewmodel,survey,Asp.net Mvc 4,Viewmodel,Survey,我正在尝试使用MVC架构为一个调查应用程序找出模型结构。实际上,这是一个更大的网络应用程序中的问答部分。我有大约120个问题,它们都有固定的答案选项,没有书面答案。目前我有3个表: Question(id, QuestionText) Answer(id, Userid, Questionid, AnswerOptionId) AnswerOption(id, Option) - example: Yes, No, 1-10, etc 我正试图找出如何构建我的viewmodel和view。我不
Question(id, QuestionText)
Answer(id, Userid, Questionid, AnswerOptionId)
AnswerOption(id, Option) - example: Yes, No, 1-10, etc
我正试图找出如何构建我的viewmodel和view。我不能只吃这样的东西:
@Html.LabelFor(m => m.QuestionText)
因为有120个。我需要使用循环还是什么?我也不想将问题硬编码到应用程序中,因为我可能会在应用程序运行时添加/删除/编辑问题
我做了一次搜索,但只找到了创建调查的应用程序,而不是在MVC中构建的实际调查。如果您知道任何示例,请告诉我。本周早些时候,我实际上遇到了同样的问题。我最终成功地做到了这一点: 我的模型由一系列问题组成,这是我编写的一个自定义类,具有场景所需的必要属性:
List<Question> Questions { get; set; }
见鬼,值得一试。我已经有这个项目在我的办公桌上大约4个月了,所以我愿意接受任何事情。谢谢。如果每个问题的答案不同,那么每个问题都会有一个答案对象列表。我正在尝试这一点,但在将视图模型映射到后期操作时遇到了一些问题。答案列表中有0个答案在post操作中
@foreach (Question question in Model.Questions)
{
<li>@question.QuestionText</li>
<li>Answer: @Html.DropDownList(String.Format("ddlAnswer{0}", question.QuestionId), Model.Answers)</li>
}
[HttpPost]
public ActionResult Index(SurveyModel model, FormCollection form)
{
foreach (Question question in model.Questions)
{
question.QuestionAnswer = form[String.Format("ddlAnswer{0}", question.QuestionId)];
}
}