我正在为我的 MVC 应用程序创建一个投票机制。用户只有在登录后才能投票。我总共有 3 个表 tblQuestions(用于填充问题)、tblAnswers(用于填充答案)、tblQuestionAnswerUserResponses(用于填充用户响应。)tblAnswers 与 tblQuestions 有关系。我在 HttpGet 的容器中使用了以下代码。这是我的控制器代码。
[HttpGet]
[ActionName("VotingResult")]
public ActionResult VotingResult(int personid)
{
List<Voting_Questions> QuesList = EpDObj.PopulateQuestions(); //Populate the list of questions
CountofQuestionsDisplayed = QuesList.Count;
ViewBag.Questions = QuesList; // Storing the list of questions in the viewbag
List<Voting_Answers> Answers = EmcObj.Voting_Answers.ToList(); //Populate the list of answers
return View(Answers);
}
我在我的视图中使用 Voting_Answers 作为模型
我的视图是
@model IEnumerable<EmployeeManagementDAL.Voting_Answers>
<h2>VotingResult</h2>
@using (Html.BeginForm())
{
<div>
@foreach (var a in ViewBag.Questions)
{
<h4>@a.Questions</h4>
<div>
@foreach (var b in Model)
{
if (b.QuestionsID == a.id)
{
@Html.RadioButton(b.AnswersOptions, new {Answerid= b.id, Questionid=a.id }) @b.AnswersOptions
}
}
</div>
}
</div>
<br/>
<div >
<input type="submit" value="Vote Now!!" onclick="return confirm('Are you sure you want to submit your choices?');"/>
</div>
}
当用户第一次访问此页面时,将不会选择任何选项。选择选项值后,单击“保存”按钮会将详细信息保存到第三个表,然后他会离开该页面。现在,如果他第二次到达该页面进行编辑,我希望我的页面在我的 tblQuestionAnswerResponses 中呈现这些值,即我想我的模型类 tblQuestionAnswerResponses 将被使用。在这种情况下,我可以在两种情况下使用相同的页面,即当用户第一次访问该页面时以及第二次访问该页面时。我可以根据视图中的条件在 MVC 中使用多个模型吗?