我想提出一个简单的调查,为ASP.NET MVC的学习基础4.这里是我的代码数据 - ASP.NET MVC 4
[HttpGet]
public ActionResult Index()
{
UserAndTableViewmodel Viewmodel = new UserAndTableViewmodel();
Viewmodel.T = Deserialize();
Viewmodel.U = new User();
for (int i = 0; i < Viewmodel.T.Questions.Count(); i++)
{
Viewmodel.U.UserChoices.Add(new Choice(Viewmodel.T.Questions[i].Choices[0].Value));
}
return View(Viewmodel);
}
[HttpPost]
public ActionResult Index(UserAndTableViewmodel Viewmodel)
{
// Viewmodel.T = Deserialize();
if (ModelState.IsValid)
{
return View("Thanks", Viewmodel);
}
else
{
return View(Viewmodel);
}
}
的XML代码是如下:
<Table>
<Question Content="Question one">
<Choice Value="Answer 1" />
<Choice Value="Answer 2" />
</Question>
<Question Content="Question two">
(...)
</Question>
</Table>
我传递deserialised数据为“指数”的观点,在这里用户可以选择他的答案。然后数据发布到[HttpPost],我希望它呈现一个视图,其中每个问题的答案都被写入,但是会发生问题 - Viewmodel.T
等于null。我该怎么做,我不应该再次反序列化它?
如果没有一个字段在视图渲染你的ViewModel.T其财产不会发布到HttpPost方法。 – bump
如何实现这一目标? – blisher
请参阅下面的答案 – bump