如何使用Foolproof的ModelAwareValidationAttribute进行不显眼的客户端validation

我正在尝试使用MVC Foolproofvalidation框架( http://foolproof.codeplex.com/ )但我遇到了ModelAwareValidationAttribute类的问题。

当我添加自定义validation属性时,它适用于服务器端模型validation,但不适用于客户端。

如果我使用框架提供的内置属性之一,客户端不显眼的validation工作,所以我知道(或者至少我认为我知道)我已经加载了正确的javascript库。

有没有人使用此框架创建自定义validation属性,它是否与客户端不显眼的validation一起使用? 如果是这样,你做了什么让它工作?

我正在使用Asp.Net MVC 3,以防万一。

基于http://foolproof.codeplex.com/SourceControl/latest#Foolproof/Client Scripts / mvcfoolproof.unobtrusive.js,您可以将自定义客户端validation规则添加为服务器端兄弟。

我在项目中所做的是扩展该文件的万无一失的基础。

示例代码:

(function () { jQuery.validator.addMethod("foo", function (value, element, params) { //validation code... }); // code based on link var setValidationValues = function (options, ruleName, value) { options.rules[ruleName] = value; if (options.message) { options.messages[ruleName] = options.message; } }; var $Unob = $.validator.unobtrusive; $Unob.adapters.add("foo", ["dependentproperty", "dependentvalue", ...(add more parameters if you want)], function (options) { var value = { dependentproperty: options.params.dependentproperty, dependentvalue: options.params.dependentvalue, }; setValidationValues(options, "foo", value); }); })(); 

希望对你有所帮助!