在MVC 3中维护状态

时间:2012-04-26 08:25:20

标签: c# asp.net-mvc-3

我只是简单地使用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>
}

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

2 个答案:

答案 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