2009-11-23 4 views
1

xsd 파일에없는 속성이 여러 개있는 개체가 있습니다. XmlDocument.Validate를 수행 할 때 xsd에없는 속성을 무시하고 대신 xsd에 필요한 속성이 xml 문서에 있는지 확인하는 방법이 있습니까?[XmlIgnore]가없는 XmlDocument.Validate 속성을 무시합니다.

내 클래스 전체에 [XmlIgnore] 특성을 추가하여이 문제를 해결할 수 있지만 대신 오히려 명시 적으로 내 개체 모델 전체에 특성을 추가하는 것이 아니라 관습에 따라이를 수행합니다.

답변

1

나는 의심의 여지가 있습니다. 개인적으로 나는 하나의 객체가 두 개의 작업을 수행하도록하려는 것처럼 들리는 DTO를 별도로 만들 것입니다. 또 다른 옵션은 XmlSerializer ctor를 사용하여 런타임에 attrib를 지정할 수 있지만 [XmlIgnore]보다 훨씬 더 많은 작업입니다.

그럼 작동 시키려면 : [XmlIgnore]. "순수"하게하려면 두 번째 DTO 모델을 만들고 두 번째 DTO 모델을 변환하십시오.

+0

두 번째 모델을 만드는 것이 효과적 일지 모르지만 내 실제 도메인 모델에 있으며 내재 된 orm에 대한 지속성을위한 것입니다. 따라서 전체 복제 모델을 만드는 것이 약간 과잉입니다. 블레어. 어쨌든 고마워요 –

+1

매핑이 1 : 1 인 한 그럴만 한데요.하지만 둘 사이를 드리프트하기 시작하면 손실을 줄이고 유형/책임을 분리하는 것이 더 쉽습니다. 그렇지 않으면 당신은 정기적으로 그것을 싸우게 될 것입니다. –

관련 문제