保留失败的验证数据

时间:2014-02-19 03:18:43

标签: asp.net-mvc-3

我要求在视图上保留并显示错误的条目。如果没有通过所有验证,就无法进入下一页。

例如,使用必须以特定格式在文本字段中输入日期。目前,如果模型绑定失败,则不会保留无效的日期文本条目。我想保留并用钒失败的消息将其显示给用户。

我想知道如果没有创建暂时保留输入的游戏和解析值的数据持有者类型,这是否可以实现。

1 个答案:

答案 0 :(得分:2)

是的,有可能。因为您还没有发布任何代码,所以我只想举例说明如何使用服务器端验证来实现这一点。

以下是提供表单的[HttpGet]操作方法,允许用户输入数据。

[HttpGet]
public ActionResult Create()
{
    // The CreateViewModel holds the properties and data annotations for the form
    CreateViewModel model = new CreateViewModel();
    return View(model);
}

以下是接收并验证表单的[HttpPost]操作方法。

[HttpPost]
public ActionResult Create(CreateViewModel model)
{
    if (!ModelState.IsValid)
    {
        return Create(); // This will return the form with the invalid data
    }

    // Data is valid, process the form and redirect to whichever action method you want

    return RedirectToAction("Index");
}

您还可以使用return View(model);操作方法中的[HttpPost]代替return Create();