원격 클라이언트에서 내 응용 프로그램에 값을 보내기위한 XML 인터페이스를 정의하는 데 사용되는 스키마가있는 XSD 파일이 있습니다. 지금 XSD는 3 가지 요소를 단순하게 말합니다.XSD 이전 버전과의 호환성
그래서 이것을 C#에서 직렬화 및 비 직렬화하기 위해 xsd.exe 도구를 사용하여 C# 클래스를 생성하고 이러한 클래스를 사용하여 XSD와 관련하여 XML을 직렬화 및 비 직렬화 할 수 있습니다.
이 작동하지만 일부 새 서버 측 기능을 사용할 수 있도록 새로운 네 번째 요소가있는 XSD의 새 버전을 만들 수 있습니다.이 요소가 새로운 원격 클라이언트에 대해 지정되었지만 여전히 지원하려면 이전 XSD (이전 원격 클라이언트의 소프트웨어를 변경하거나 변경할 수는 없음)가 있지만 새 XSD에서 생성 된 새 클래스는 이전 XSD의 이전 XML과 호환되지 않습니다.
XML을 XDocument 또는 이와 유사한 것으로 직접 읽을 수 있다고 가정하지만 XSD 중 하나에 대해서만 유효성을 검사 할 수있는 XML을 수락하는 기능을 원합니다. (그리고 XSD 버전에 따라 서버 측 결정을받습니다. 그것을 반대하는). 이것은 고객 관계 문제 때문입니다.
이 문제를 해결하는 가장 좋은 방법은 무엇입니까?