2010-12-11 5 views
1

이전에 질문을 받았다면 죄송합니다. 문제를 설명하기 위해 여러 키워드 조합을 시도했지만 Google 또는 SO에서 아무 것도 찾을 수 없었습니다.상속 및 유효성 검사 관련 문제 응용 프로그램 블록의 ObjectCollectionValidator

문제는 간단합니다. 개체 목록이 있습니다. 이 목록을 ObjectCollectionValidator으로 표시하여 개체의 유효성을 검사합니다. 그러나 목록에있는 일부 객체는 T 유형이 아니라 파생 된 유형의 객체입니다.

파생 된 유형의 유효성을 검증해야하는 부모에게는 특성이 없습니다. 그들은 단순히 그렇게하지 않을 것입니다. 나는 VAB가 ObjectCollectionValidator을 다룰 때 상속 된 타입을 검사하지 않는다고 믿는다. 그러나 그것이 내 의견의 결함이다, 그래서 나는 틀렸다고 기대하고있다.

그건 그렇고, 나는 EntLib의 4.1을 사용하고있다. (원할 때 엔 EntLib 5.0으로 바꿀 수 없다.)

답변

2

당신이 목격 한 것은 VAB 5.0에서 해결 된 VAB 4.1의 디자인입니다. VBA 5.0에서 ObjectCollectionValidatorAttribute을 사용하여 컬렉션 속성을 장식하면 실제 형식을 생략 할 수 있으며이 경우 유효성 검사기는 실제 형식으로 개체의 유효성을 검사합니다.

VAB 5.0으로 전환 할 수 없으면 자신의 개체 컬렉션 유효성 검사기를 작성해야합니다. 이것은 정말로 어렵지 않습니다. VAB 5.0의 ObjectCollectionValidatorAttributeObjectCollectionValidator의 출처를 살펴보십시오.

행운을 빈다.

관련 문제