我将在理货软件中为分类帐生成xml。为此,我创建了一个xsd文件..在计数分类帐xml中, 一些标签是用点生成的。例如
我遵循以下编码:
<xs:complexType name="Ledger1">
<xs:element minOccurs="1" maxOccurs="unbounded" name="BLOOD.GROUPS"
type="BLOODGROUPS"/>
<xs:complexType name="BLOODGROUPS">
<xs:sequence>
<xs:element name="BLOODGROUPS" type="xs:string"/>
<xs:element name="BLOODGROUPS" type="xs:string"/>
<xs:element name="BLOODGROUPS" type="xs:string"/>
</xs:sequence>
</xs:complexType>
使用上面的xsd生成的结果如下
<BLOODGROUPS>
<BLOOD>A+</BLOOD>
<BLOOD>B+</BLOOD>
<BLOOD>O-</BLOOD>
</BLOODGROUPS>
但预期结果是:
<BLOOD.GROUPS>
<BLOOD>A+</BLOOD>
<BLOOD>B+</BLOOD>
<BLOOD>O-</BLOOD>
</BLOOD.GROUPS>
任何人都可以帮助我如何为上述预期结果声明xsd 在vb.net。我正在使用版本3.5
答案 0 :(得分:0)
不幸的是,您无法直接将TableName
与.
字符设置在一起。但是,您可以使用DataAdapter
填充数据集,然后使用DataSet1.WriteXml("D:\\fileName.xml")
方法将该数据集写入xml文件。我使用该方法创建了一个示例文件。
Dim Da As new SqlDataAdapter("Select Query", Connection)
Dim Ds As new DataSet()
Da.Fill(Ds, "Table.Name");
Ds.WriteXml("D:\\tempFile.xml")
示例文件
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<Table.Name>
<CompanyID>1</CompanyID>
<IndustryID>98</IndustryID>
<AwardID>MA000012</AwardID>
<AgreementID>9</AgreementID>
<CreateUser>1</CreateUser>
<CreateDate>2014-05-03T14:31:00+05:30</CreateDate>
</Table.Name>
</NewDataSet>