0

我只是使用 mvc 3 开发输入表单。我有很多文本框、单选按钮、标签。因此,当将数据从视图回发到控制器时,它会丢失输入的数据。如何为所有回发保留这个?默认情况下是否有任何 mvc 机制可用?这意味着通过启用某些属性,我们是否命令 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>
}

如何维护所有回发的输入和选定值的状态?

4

2 回答 2

2

您可以使用Session在多个回发中保持状态。

于 2012-04-26T08:26:59.533 回答
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

于 2012-04-26T09:21:16.007 回答