部分观点& ModelState.AddModelError

时间:2012-06-05 19:59:07

标签: asp.net-mvc asp.net-mvc-3 partial-views modelstate

LoginRegister视图的来源是这样的:

@Html.Partial("authentication/_login")
@Html.Partial("authentication/_register")

并且每个子视图都有一个具有此语法的表单

@using (Html.BeginForm(**seperated-methods**, "Login")) 
{
    @Html.ValidationSummary(false)
} 

我在回发中发送错误,此代码

ModelState.AddModelError("", "**any-error-message**");
return View("authentication/LoginRegister", customized-data);

重点是,partial views中都会显示错误消息。

1 个答案:

答案 0 :(得分:3)

您需要告诉ModelState此错误引用的属性:

ModelState.AddModelError("PropertyName", "**any-error-message**");

现在它只会在

@Html.ValidationMessageFor(m => m.PropertyName)

如果您未指定属性名称,则该错误将被视为全局错误,并会在每个ValidationSummary中显示。