Asp.net mvc 根据列表框的选择,使用DataAnnotations以不同方式验证文本框
我有一个自定义的验证属性,可以检查以确保生日至少在过去18年。我现在有一个要求,如果一个单独的下拉列表中选择了一个特定的州,我将把它改为过去的19年 是否可以动态更改自定义验证?这是我目前正在使用的Asp.net mvc 根据列表框的选择,使用DataAnnotations以不同方式验证文本框,asp.net-mvc,data-annotations,Asp.net Mvc,Data Annotations,我有一个自定义的验证属性,可以检查以确保生日至少在过去18年。我现在有一个要求,如果一个单独的下拉列表中选择了一个特定的州,我将把它改为过去的19年 是否可以动态更改自定义验证?这是我目前正在使用的 public class MyCustomDateAttribute: ValidationAttribute { public override bool IsValid(object value) { DateTime dt = (DateTime)value; if (dt>= Date
public class MyCustomDateAttribute: ValidationAttribute
{
public override bool IsValid(object value)
{
DateTime dt = (DateTime)value;
if (dt>= DateTime.Now.AddYears(-18)){
return false;}
return true;
}}}
以某种方式将-18改为-19
我知道这只是服务器端,这没关系。在这种情况下,您应该重写并实现
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
validationContext参数是解决问题的关键
完整的解决方案在