1
我正在使用Fluent验证在MVC中进行服务器端和不显眼的客户端验证。我不得不扩展它来满足业务需求,并且遇到了默认的DataAnnotations验证问题。所以我只想完全禁用内置的DataAnnotations提供程序,并使用我自己的Fluent验证扩展来执行此验证。使用Fluent验证时禁用默认DataAnnotations不显眼验证
基本上,我需要停止为值类型(例如数字和日期(data-val-number,data-val-date,data-val-required))内置不显眼data-val-
属性的渲染。
我已经试过:
ModelValidatorProviders.Providers.Clear();
这似乎摆脱数/日期的属性,但所需的属性仍然存在。
我想:
DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
但是,这似乎并没有做任何事情。也许我有错误的位置/顺序?
将在Web.config中禁用Unobtrusive Validation删除这些? add key =“ClientValidationEnabled”value =“false”或add key =“UnobtrusiveJavaScriptEnabled”value =“false” – Tommy 2012-08-15 13:27:52
我认为这也会禁用Fluent验证的不显眼的验证,我仍然需要。我只是不希望内置的DataAnnotation验证启动。我已经发布了下面的代码来解决这个问题。 – 2012-08-15 13:39:48
太棒了,你应该标记为已知答案,因为你找出了解决方案。我从来没有不得不禁用构建东西,因此评论,而不是一个答案:) – Tommy 2012-08-15 13:53:53