自定义数据验证批注-ASP.NET MVC2 C#
我有一个viewmodel,部分看起来像这样自定义数据验证批注-ASP.NET MVC2 C#,c#,asp.net,asp.net-mvc,attributes,C#,Asp.net,Asp.net Mvc,Attributes,我有一个viewmodel,部分看起来像这样 [Required] public int Year { get; set; } [Required] [Range(1, 5000000)] public int ModelID { get; set; } [Required] public int ZipCode{ get; set;} 我想添加一个自定义验证器属性,用于检查数据
[Required]
public int Year { get; set; }
[Required]
[Range(1, 5000000)]
public int ModelID { get; set; }
[Required]
public int ZipCode{ get; set;}
我想添加一个自定义验证器属性,用于检查数据库以确保Zip有效。类似于
[Required]
[IsValidZipcode]
public int ZipCode{ get; set;}
我还没能在网上找到一个教程——我不知道该搜索什么,因为这似乎很常见
我应该怎么做呢?您可以扩展
ValidationAttribute
,如中所示ValidationAttribute
有一个IsValid()方法,您可以重写该方法以指示模型的有效性。您可以扩展ValidationAttribute
,如中所示ValidationAttribute
有一个方法IsValid(),您可以重写该方法以指示模型的有效性。只需创建一个从ValidationAttribute类继承的类,验证IsValid方法:
public class IsValidZipCode: ValidationAttribute
{
public override bool IsValid(object value)
{
return db.ValidateSomething(value);
}
}
那你就可以走了:
[IsValidZipCode(ErrorMessage = "Not a valid zip code!")]
public int ZipCode { get; set; }
只需创建一个从ValidationAttribute类继承的类,验证IsValid方法:
public class IsValidZipCode: ValidationAttribute
{
public override bool IsValid(object value)
{
return db.ValidateSomething(value);
}
}
那你就可以走了:
[IsValidZipCode(ErrorMessage = "Not a valid zip code!")]
public int ZipCode { get; set; }
+我感谢你没有获得投票权,尽管你以30秒的优势击败了我呵呵,谢谢。你的答案更好——人们不喜欢阅读:我没有注意到你是第一个。但是是的。。复制+粘贴更容易+1+1感谢你没有获得投票权,尽管你以30秒的优势击败了我。:)呵呵,谢谢。你的答案更好——人们不喜欢阅读:我没有注意到你是第一个。但是是的。。复制+粘贴更容易+1.