2012-05-04 47 views
1

我有一个只有复选框的表单。如果复选框没有被选中,那么该页面将无效并且不会提交数据。在视图中,我已经放出了模型对象的一些字段,只是为了让用户知道他们正在删除什么。当我单击提交按钮并且模型状态无效时,页面将显示验证错误,但模型中的数据不再存在!asp.net mvc - 发回的数据丢失

有没有人知道我可以坚持这一数据,而无需再次调用数据库来填充模型对象?

谢谢

+0

一旦验证失败,您是否返回Viewmodel作为返回View()语句的一部分? –

+0

是的,我回来了 – Funky

回答

2

ASP.Net MVC不会神奇地坚持模型信息。

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

0

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

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

+0

模型验证很好,它只是一个整容问题 – Funky