我必须验证.NET MVC中的文本框,其中文本框值小于或等于两个列值的差异?

时间:2018-04-17 06:56:56

标签: asp.net-mvc validation html.textboxfor

必须验证文本框字段,使其值必须小于或等于计算值(两个列值之间的差值)。 例如,我有两个Columns TodaysDateTime和TomorrowsDateTime这两个之间的差异是以分钟计算的,这个分钟值是文本框的最大值。

提前致谢!

2 个答案:

答案 0 :(得分:0)

if(Convert.ToInt32(textbox1.Text) <= (TomorrowsDateTime - TodaysDateTime))
{
    // show alert or error dialogue
}

答案 1 :(得分:0)

是。您可以使用自定义验证

在模型级别进行验证

(假设您已准备好相应地准备模型,即 ViewModel )。

您的型号:

 [testValidator]
    public partial class Cal
    {
        public DateTime todayDateTime { get; set; }
        public DateTime tommorwDateTime { get; set; }
        public int result {get; set;}
    }

<强>的CustomValidator:

   class testValidator : AbstractValidator<test>
   {
    public override ValidationResult Validate(test obj)
    {

    if(Convert.ToInt32(obj.result ) <= (todayDateTime  - tommorwDateTime ))
        {
            return ValidationResult.Success;  
        }
    else
        {
            return new ValidationResult("Please Enter a Valid Dates.");  
        }

    }

}

在你的控制器上。您只需查看Model.IsValid

即可

希望这有帮助。