我有基于现有数据库的模型,我已经编写了元数据类和自定义属性类,现在我想将所有自定义属性逻辑转换为 Jquery 或 Javascript 自定义函数,请指导我简单或任何可用的免费工具。
4 回答
到目前为止,还没有一种工具可以将 c# 中的自定义验证器转换为 JavaScript 中的自定义客户端验证器 [据我所知]。
我建议您寻找已经在网络上构建的自定义验证器,例如http://foolproof.codeplex.com/。其中一些可能有您需要的东西,如果您找不到适合您要求的东西,请遵循一些关于如何构建自己的教程的教程,也许还可以开始您自己的开源项目。既然你需要它,其他人可能也需要它。
一些关于如何构建自己的自定义验证器的教程可能会让你到达你想要的地方:
- http://blogs.msdn.com/b/simonince/archive/2011/02/04/conditional-validation-in-asp-net-mvc-3.aspx
- http://www.codeproject.com/Articles/301022/Creating-Custom-Validation-Attribute-in-MVC-3
这是我最喜欢的参考资料之一:
有了这一切,我相信您将成功创建自己的客户端验证器。
你绝对应该看看 MVC 中的不显眼的验证。它使 MVC 与 Jquery 一起工作,并且 Jquery 使用 HTML 标记中的数据属性验证插件。添加自定义验证属性后,您还必须继承并实现 IClientValidatable。有关更多信息,请参阅以下链接。
http://bradwilson.typepad.com/blog/2010/10/mvc3-unobtrusive-validation.html
http://www.codeproject.com/Articles/275056/Custom-Client-Side-Validation-in-ASP-NET-MVC3
rcdmk 和 Scott Selby 为如何实现IClientValidatable
与 jquery 不显眼验证集成的接口提供了极好的资源。作为替代方案,如果您不想维护验证逻辑的 javascript 版本,则可以使用RemoteAttribute
该类来指示不显眼的验证执行 ajax 请求以验证数据(实际上在某些情况下,这将是唯一正确的验证某些东西的方法 - 例如用户名可用性)。
我不知道您对验证的要求是什么,但是jQuery 验证插件 应该可以处理它。它会自动验证许多常见需求(电话号码、号码、空文本、电子邮件),如果需要,添加自定义验证也很容易。