asp.net - asp.net 中的条件正则表达式验证器

标签 asp.net validation

获得一个具有数据注释验证器属性的模型。一个典型的例子是:

 [RegularExpression("^[a-z]{5,}$", ErrorMessage="required field, must have correct format")]
 public string SomeProperty {get;set; }

我需要使这些验证器有条件:如果模型中的特定属性具有特定值,则应禁用大多数验证器。 - 在服务器端和客户端上。 ( (我正在使用标准 Ms Ajax 客户端验证)

没有使数据注释验证器成为有条件的默认方法,因此我寻找了一些实现新型数据注释验证器的库。 查看了 Foolproof.codeplex.com 和RequiredIf 验证属性。 但我发现我要么无法正确实现它们,要么它们的实现太简单(foolProof 只能让您检查单个条件)

对我来说最好的解决方案是我可以为验证器提供 2 个参数:条件表达式和验证器。可能看起来像这样:

 [RequiredIf("OtherProperty == true", RegularExpression=@"^[a-z]{5,}$", ErrorMessage="required field, must have correct format")]
 public string SomeProperty {get;set; }

您还有其他推荐的库,或者我可以尝试的其他类型的解决方案吗?

最佳答案

看起来您想使用 RegularExpressionIf来自万无一失的验证器。

关于asp.net - asp.net 中的条件正则表达式验证器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16391721/

相关文章:

ruby-on-rails - Rails、Devise、Validatable 不起作用?

c# - 验证动态 texbox 的按钮点击

c# - 使用 Jquery 从文本框向列表框添加项目

c# - ASP.net - 用摄像头捕捉视频并在网页中播放

java - 使 Web 服务架构验证将空标签视为缺失

php - Codeigniter 表单验证外部回调

c# - 在 ASP.NET WebForms 项目中的什么地方可以找到 "System.Web.UI.Control"命名空间?

javascript - 动态更改 jquery UI 对话框的大小

php - 如何在 zend framework 2 中验证注册表单?

entity-framework - 使用数据库优先模型 (EF 5) 向模型添加验证