c# - 如果错误已经逐字段显示,如何不显示 ASP MVC ValidationSummary?

标签 c# asp.net-mvc

我不想显示 ValidationSummary,以防它只显示已显示的字段相关错误。但是,当发生自定义服务器端验证错误时,我确实需要 ValidationSummary:

if (!UserManager.IsEmailConfirmed(user.Id))
{
    AuthenticationManager.SignOut();
    ModelState.AddModelError("", "You need to confirm your email.");
    return View(model);
}

enter image description here

enter image description here

最佳答案

使用 @Html.ValidationSummary(excludePropertyErrors: true)

excludePropertyErrorstrue 时,此重载会隐藏属性错误,例如您的“The Email field is not a valid e-mail address.”“密码字段是必需的。” 来自验证摘要。另见 @Html.ValidationSummary(true) - What's the true do?

不会检测您是否通过 @Html.ValidationMessageFor() 打印了那些,所以如果您忘记了其中任何一个,您可能会收到失败的表单提交'告诉你为什么他们失败了。

要手动添加属性验证错误,请调用 ModelState.AddModelError("", "Custom error")(注意空字符串),如 Add error message to @Html.ValidationSummaryASP.NET MVC Html.ValidationSummary(true) does not display model errors

关于c# - 如果错误已经逐字段显示,如何不显示 ASP MVC ValidationSummary?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29847308/

相关文章:

asp.net-mvc - ASP.NET MVC Json DateTime序列化转换为UTC

asp.net-mvc - 跨应用程序进行表单例份验证的 ServiceStack 失败...为什么?

c# - 应用程序无法导航到 MainPage

c# - Parallel.ForEach 中的 SQL 查询 - 死锁

asp.net-mvc - ASP.NET MVC View - 我可以使用代码隐藏吗

ASP.NET MVC 类级别自定义数据注释和 ModelState 键

c# - 在 XAML 中绑定(bind) Itemscontrol 之外的属性

c# - 从文字中提取控制

c# - 引用类库项目中的 System.Diagnostics.Trace

asp.net-mvc - 如何为混合流客户端填充自定义身份资源声明?