csharp 自定义数据注释验证属性,用于验证数据是两个字符的美国州名缩写。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp 自定义数据注释验证属性,用于验证数据是两个字符的美国州名缩写。相关的知识,希望对你有一定的参考价值。
using System;
using System.ComponentModel.DataAnnotations;
using System.Linq;
sealed public class UsStateTwoCharacterAbbreviationAttribute : ValidationAttribute
{
private readonly string[] validStateAbbr = new string[] { "AK", "AL", "AR", "AZ", "CA", "CO", "CT", "DC", "DE", "FL", "GA", "HI", "IA", "ID", "IL", "IN", "KS", "KY", "LA", "MA", "MD", "ME", "MI", "MN", "MO", "MS", "MT", "NC", "ND", "NE", "NH", "NJ", "NM", "NV", "NY", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VA", "VT", "WA", "WI", "WV", "WY" };
public UsStateTwoCharacterAbbreviationAttribute()
: base("must be a two character U.S. state abbreviation")
{
}
public override string FormatErrorMessage(string name)
{
return String.Format("{0} {1}", name, ErrorMessageString);
}
public override bool IsValid(object value)
{
bool isValid = false;
if(!String.IsNullOrWhiteSpace(value.ToString()))
{
if(value.ToString().Length == 2 && this.validStateAbbr.Contains(value.ToString()))
{
isValid = true;
}
}
return isValid;
}
}
以上是关于csharp 自定义数据注释验证属性,用于验证数据是两个字符的美国州名缩写。的主要内容,如果未能解决你的问题,请参考以下文章
csharp 数据注释属性,用于验证字符串是否为有效的XML
具有客户端验证的自定义数据注释验证属性
使用数据注释和代码的自定义验证属性
使用数据注释的依赖属性的自定义模型验证
csharp 用于测试数据的验证属性晚于另一个
自定义大小注释上的 Java 验证消息