问题
I have some data annotation attribute like this:
[StringLength(20, MinimumLength = 5, ErrorMessage = "First name must be between 5 and 20 characters")]
How I can Find Data Annotation attributes and their parameters using reflection?
thanks
回答1:
I assume you have something like this:
[StringLength(20, MinimumLength = 5, ErrorMessage = "First name must be between 5 and 20 characters")]
public string FirstName {get;set;}
To get the attribute and a property from it:
StringLengthAttribute strLenAttr =
typeof(Person).GetProperty("FirstName").GetCustomAttributes(
typeof(StringLengthAttribute), false).Cast<StringLengthAttribute>().Single();
int maxLen = strLenAttribute.MaximumLength;
来源:https://stackoverflow.com/questions/7864662/how-i-can-find-data-annotation-attributes-and-their-parameters-using-reflection