创建一个从从Schema自动生成的类中创建

本文关键字:创建 Schema 从从 自动生成 choice 一个 | 更新日期: 2023-09-27 18:18:18

我有一个模式,我使用xsd工具从该模式生成了一个类(file.cs)。在模式的末尾有一个包含3个节点(记录)的选择组。

在这3条记录中,我需要使用其中一条,即<node2>。这里我们没有使用BizTalk映射或XSLT来映射,但是我们需要创建该类的对象,然后进行序列化/反序列化,等等,等等(这是要求)。

现在的挑战是我必须从Header访问这个<node2>,因为这个<choice>组是在记录下的因此,在我的c#代码中,我能够从<header>中获得<Id>和字段,如

schema obj= new Schema();
Schema.Header= new Schema.Header();
Schema.header.Id="something"
Schema.header.name="something"

但是对于选择组,我无法从头记录中访问,因为它的类型是<node1>, <node2><node3>,但是有一个为<node2> which contains the field1 and field2.创建的类

你能告诉我如何从Header访问记录吗?我需要这个来映射。

例如(Schema.xsd)-->schema.cs文件

   <Root>
<Header>
<Id></Id>
 <Name></name>
<choice>
 <node1>

<field2></field2>
<node2>
  <field1></field1>
<field2></field2>
<node3>
 <field1></field1>
 <field2></field2>
 </Header>

创建一个<choice>从从Schema自动生成的类中创建

如果你使用xsd.exe生成你的类,那么你的头类应该有一个object类型的名为Item的属性。您可以将该属性分配给Node1、Node2或Node3类的对象。