MVC中的无效表单丢失了回发的表单数据

时间:2009-06-30 11:52:28

标签: asp.net-mvc

如果验证失败并且启动了ValidationSummary,如何重新创建预先填充过发布数据的表单。我得到验证器解雇但无法预先填充表格。

catch (Exception ex)
{
    TempData["Message"] = "An Error Occured while saving the product!";
    ModelStateDictionary modelDictionary = Validation.UpdateModelStateWithRuleViolation(product, ViewData.ModelState);
    TempData["ModelDataDict"] = modelDictionary;
}

出错时,我将modelState分配给我使用的TempData变量但是如何重新创建已发布数据的表单...

1 个答案:

答案 0 :(得分:2)

确保您返回已发现无效的数据模型,以便表单可以重新绑定到与发送时相同的数据。

这样您就不会丢失内容。当然,这仅在输入已经绑定数据模型时才有效。即:

  <label>Name</label>
  <%=Html.TextBox("Name", Model.MyClass.Name)%>