LoginRegister View 的来源是这样的:

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

并且每个 subview 都有一个具有此语法的表单
@using (Html.BeginForm(**seperated-methods**, "Login"))
{
    @Html.ValidationSummary(false)
}

我使用此代码在回发中发送错误
ModelState.AddModelError("", "**any-error-message**");
return View("authentication/LoginRegister", customized-data);

关键是,错误消息同时显示在 partial views 中。

最佳答案

你需要告诉 ModelState 这个错误指的是哪个属性:

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

现在它将只在
@Html.ValidationMessageFor(m => m.PropertyName)

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

关于asp.net-mvc - 部分 View 和 ModelState.AddModelError,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10904055/

10-13 07:50