난 당신이 얘기하는 가정
여기
[AttributeUsage(AttributeTargets.Property, AllowMultiple = false)]
public class MyAttribute: ValidationAttribute
{
public override bool IsValid(object value)
{
...
}
}
는 속성이 속성에 사용되는 방법 : 여기
처럼 발리 속성이 어떻게 보이는지 볼 수있는 스케치 코드 모델입니다
DataAnnotations
네임 스페이스 내의
ValidationAttribute
에 대해? 이러한 특성은
에 일반적으로에 명시된 특정 모델없이 유효성 검사 요구 사항을 설명하는 데 사용됩니다.
그러나, 많은 경우에, 그것은 개체에 대한 감각을 만들거나 구성하는 개체로 설정 한 다음 호출은 "이 유효한 지금인가?"물어 만들 수에 대한 - 물론, 그런 경우에, 당신의 IsValid
메쏘드에 대한 호출은 그 프로퍼티의 값이 설정된 후에 잘 일어날 것입니다.
속성은 일반적으로 수동적 - 뭔가 같은 시간이 실제로 프로그래밍 방식으로 속성을 액세스하고 그것으로 무언가를 할 때까지, 속성 내에서 코드 중 어느 것도 실행되지 않습니다. "이 속성이 연결된 구성원이 호출 될 때 먼저이 코드를 실행하십시오"라는 속성을 작성하는 일반적인 방법은 없습니다. 속성이 세트에 해결 및 방법을 얻을 수 있기 때문에
는
, 나는 세터가 귀하의 속성을 실행하기 호출해야합니다 생각합니다. –