我只是简单地使用mvc 3开始输入表格。我有很多文本框,单选按钮,标签。因此,当从视图回发数据到控制器时,它会丢失输入的数据。如何为所有回发保留这个?是否有任何mvc mechanisam默认可用?这意味着通过启用某些属性,我们命令mvc自己处理状态吗?
我对发送viewdata对象不感兴趣。除了mvc3中的默认机制是什么?
@using (Html.BeginForm())
{
<table>
<tr>
<td>
@Html.TextBox("txtTitle")
@Html.CheckBox("chkOption")
</td>
<td>
@Html.TextBox("txtDetails")
@Html.DropDownList("drpList")
</td>
<td>
<input type="submit" value="Cancel" name="action" />
<input type="submit" value="Create" name="action" />
</td>
</tr>
</table>
}
如何维护所有回发的输入和选定值的状态?
答案 0 :(得分:2)
您可以使用Session在多个回发中保持状态。
答案 1 :(得分:1)
您似乎需要创建Model
并使用@Html.TextBoxFor()
,@Html.CheckBoxFor()
和@Html.DropdownListFor()
方法代替模型的属性。
然后,您将拥有一个类似命名的操作方法,用[HttpPost]
属性修饰,模型作为参数。然后,您将能够对尝试的表单提交执行验证,并在表单状态有效时处理模型。
我会研究强类型视图,模型,并可能会阅读一些在线教程。
下面的链接似乎是一个很好的教程,它只有几页,但应该通过你需要的所有内容开始。
http://www.asp.net/mvc/tutorials/getting-started-with-aspnet-mvc3/cs/intro-to-aspnet-mvc-3