【问题标题】:"Lazy" validation with MVC 3 and Fluent Validation使用 MVC 3 和 Fluent Validation 进行“惰性”验证
【发布时间】:2015-11-05 06:10:04
【问题描述】:

如何使用 MVC 3 和 Fluent Validation 禁用“渴望”验证?我有几条附加到特定表单的验证消息,它们都在表单首次出现时出现。我需要它们仅在用户提交表单时出现。

在此处和在线搜索都没有找到类似的问题。

我正在遵循整个组织中使用的模式,因此不能选择使用不同版本的 MVC。在客户端涉及自定义 JavaScript 的解决方案是不可接受的。

这个特定项目是用 C# 编写的,但我知道 VB.Net,所以答案可以是任何一种语言。

【问题讨论】:

  • 您不想使用服务器端验证并禁用客户端 cide 吗?在你的情况下,它会足够好。它肯定只会在提交时调用。
  • 这是可能的。

标签: asp.net-mvc validation fluentvalidation


【解决方案1】:

正如我所说,您可以使用 Web.Config 中的此字符串设置禁用客户端验证:

<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>

或者用Global.ajax中的代码:

protected void Application_Start() 
{
   HtmlHelper.ClientValidationEnabled = true;//false
   HtmlHelper.UnobtrusiveJavaScriptEnabled = true;//false
} 

更重要的是,您可以像这样针对特定视图禁用客户端验证:

@model MvcApp.Models.YourViewModel
@{
   ViewBag.Title = "Test Title";
   HtmlHelper.ClientValidationEnabled = false;
}

【讨论】:

  • 这会完全禁用客户端验证吗?我的问题专门询问如何仅在我提交表单时触发验证。
猜你喜欢
  • 2011-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多