ModelState没有字段?

时间:2009-03-29 17:10:45

标签: asp.net-mvc validation

我有一个像这样的控制器动作:

[ActionName("Create"), AcceptVerbs(HttpVerbs.Post)]
public ActionResult Save([Bind(Exclude="Id")]Project project)
{
    try
    {
        _projectRepository.Save(project);
        return RedirectToAction("Details", new { id = project.Id });
    }
    catch (PropertyValueException ex)
    {
        ModelState.AddModelError(ex.PropertyName, ex.Message);
        return View();
    }
    catch (Exception ex)
    {
        ModelState.AddModelError("", ex);
        return View();
    }
}

处理PropertyValueException的代码工作正常:错误由Html.ValidationSummary显示,错误显示在相关字段旁边。

使用第二个catch块,我试图满足(例如)重复约束违规,我希望在验证摘要中显示异常(它不能显示在特定字段旁边,因为我不知道没有那些信息。它不起作用。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我认为你做错了什么。请参阅我对此问题的回答:asp.net MVC - ValidationSummary not displaying。我认为这是框架中的一个错误。