유효성 검사 속성으로 장식 된 속성이있는 객체가 있습니다. 내 유효성 검사가 올바르게 작동하지만 이러한 특성을 기반으로 문자열 조작을 수행하는 추가 메서드가 필요합니다.객체의 유효성 검사 속성 읽기
내가 "이름"을 조작 할 수 있도록하려는public class Pupil
{
/// <summary>
///
/// </summary>
public Pupil()
{
}
[NotNullValidator]
[StringLengthValidator(0, 54, MessageTemplate = "Invalid value '{0}' for {1}, Max length: {5}")]
public string Name{ get; set; }
[NotNullValidator]
[StringLengthValidator(0, 2, MessageTemplate = "Invalid value '{0}' for {1}, Max length: {5}")]
public string Gender{ get; set; }
}
StringLengthValidator 속성과 인수에 따라 :
는 다음과 같은 목적을 고려하십시오. 예를 들어 :
는///Takes a Pupil object in
public static void DoManipulation(object value)
{
foreach(var property in value.GetType().GetProperties())
{
if(property.Name == "Name")
{
var att = property.GetCustomAttributes(typeof(StringLengthValidator), false);
var length = ((StringLengthValidator)att[0]).UpperBound;
}
}
}
는 "길이"의 값은 널 (null)로 다가오고보다는 54 어떻게 값을받을 수 있나요? 잘하면 감사합니다, 감사합니다.
일을 만들어? –
당신은 길이는 반드시 널되고 있습니까? 그것은 정수 속성이므로 강력하게 의심 스럽습니다. 길이를 설정하는 시점에 도달했는지 확인하십시오. –