asp.net mvc - 回发后数据丢失

时间:2012-05-04 14:40:37

标签: asp.net-mvc-3 model validation postback

我的表单只有一个复选框。如果未选中该复选框,则该页面将无效并且不会提交数据。在视图中,我已经从模型对象中推出了一些字段,只是为了让用户知道它们正在删除的内容。当我单击“提交”按钮并且模型状态无效时,页面将显示验证错误,但模型中的数据不再存在!

有没有人知道如何在不再调用数据库来填充模型对象的情况下保留这些数据?

由于

2 个答案:

答案 0 :(得分:2)

ASP.Net MVC不会神奇地保留模型信息。

您需要将其包含在表单中的隐藏字段中(攻击者可以修改),或者从数据库中重新获取它。

答案 1 :(得分:0)

如果您不从数据库重新填充模型,则必须使用隐藏字段回发所有数据。

无论如何,我不明白模型验证如何失败,只是一个复选框:/。