【问题标题】:How to create comparison validator MVC2如何创建比较验证器 MVC2
【发布时间】:2010-09-10 17:13:18
【问题描述】:

我有 2 个属性 整数最小值 整数最大值 我必须创建一个数据注释属性来验证这一点 它应该说 1) 如果 MinValue 和 MaxValue 不为零,则“MinValue 应小于 MaxValue”。 2)如果 MinValue 和 MaxValue 都为零(0),则不应比较这两个值。

您为实现这一目标而提出的任何意见都将帮助我确保这样做

【问题讨论】:

    标签: asp.net-mvc-2


    【解决方案1】:

    您可以编写一个源自ValidationAttribute 的自定义验证器属性

    [AttributeUsage(AttributeTargets.Class)]
    public class CustomValidateAttribute : ValidationAttribute
    {
        public override bool IsValid(object value)
        {
            var model = (MyModel)value;
            return model.MinValue < model.MaxValue;
        }
    }
    

    并用这个自定义属性装饰你的模型:

    [CustomValidate]
    public class MyModel
    {
        public decimal MinValue { get; set; }
        public decimal MaxValue { get; set; }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-03
      • 1970-01-01
      • 2012-03-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多