C# 为XSD的多个版本维护一个生成的c类

C# 为XSD的多个版本维护一个生成的c类,c#,xml,xsd,C#,Xml,Xsd,我有两个版本的xsd文件。 两者都是同一模式的不同版本 这两个文件之间有细微的差别。i、 e有些节点相同,有些节点不同 例如:复杂类型ABC在一个版本中具有qwe、rty属性 但在第二个版本中,ABC具有qwe、mnp、zxc属性 另外,在两个版本中还有其他完全相同的复杂类型 现在,我不想使用xsd.exe工具为这两个模式xsd文件生成两个单独的类 相反,是否有任何选项可以只为两个版本的xsd文件维护一个c类 我有一个xsd到其他对象的逐字段映射。但是由于我必须为两个版本的xsd生成两个单独的类

我有两个版本的xsd文件。 两者都是同一模式的不同版本

这两个文件之间有细微的差别。i、 e有些节点相同,有些节点不同

例如:复杂类型ABC在一个版本中具有qwe、rty属性 但在第二个版本中,ABC具有qwe、mnp、zxc属性

另外,在两个版本中还有其他完全相同的复杂类型

现在,我不想使用xsd.exe工具为这两个模式xsd文件生成两个单独的类

相反,是否有任何选项可以只为两个版本的xsd文件维护一个c类

我有一个xsd到其他对象的逐字段映射。但是由于我必须为两个版本的xsd生成两个单独的类,映射代码变得重复


因此,任何线索或任何新的设计模式都可以修复此版本控制并避免重复的映射代码。请帮助

您可以构建一个包含2个XSD文件的所有属性的类,并手动对其进行序列化/反序列化。然后,您可以使用指定属性版本的自定义属性标记每个属性。因此,您可以知道哪些属性对于反序列化是必需的,哪些不是。

您可以详细说明一下吗。我没听懂你说的话。。请举个例子好吧,我意识到我的答案只与一些XML的序列化/反序列化有关。如果你想要一些关于XSD.exe的建议,我帮不了你。。。