【发布时间】:2015-12-16 14:22:11
【问题描述】:
我正在尝试使用我的 XSD 将我的数据从数据表导出到 XML 文件。因为我有另一个导入数据的函数,所以我希望导出看起来相同,所以我从 Import-XML-File 生成了一个 XSD。
导出数据的函数是:
public void Export(string CmdString)
{
cmd = new SqlCommand(CmdString, SqlConnector.conn);
dt = new DataTable("tbl_Adresse");
sda = new SqlDataAdapter(cmd);
sda.Fill(dt);
dt.WriteXml("..\\..\\..\\XmlDataHandler\\XMLFile_Export.xml", XmlWriteMode.WriteSchema);
}
导入 XML 文件如下所示:
<?xml version="1.0" encoding="ISO-8859-1"?>
<tbl_address>
<row delete="true" />
<row Forename="Simon" Surname="Baker" MobileNr="+193434278" />
<row Forename="Johnny" Surname="Depp" MobileNr="+173953278" />
<row Forename="Michael" Surname="Jackson" MobileNr="+127425978" />
<row Forename="Elvis" Surname="Prasley" MobileNr="+163645378" />
<row Forename="Axl" Surname="Rose" MobileNr="+173975618" />
</tbl_address>
架构如下所示:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="tbl_address">
<xs:complexType>
<xs:sequence>
<xs:element name="row" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="delete" type="xs:string"></xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
目前 Export-XML-File 看起来像这样:
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="tbl_address" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="tbl_address">
<xs:complexType>
<xs:sequence>
<xs:element name="Forename" type="xs:string" minOccurs="0" />
<xs:element name="Surname" type="xs:string" minOccurs="0" />
<xs:element name="MobileNr" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<tbl_address>
<Forename>Simon</Forename>
<Surname>Baker</Surname>
<MobileNr>+193434278</MobileNr>
</tbl_address
<tbl_address>
<Forename>Johny</Forename>
<Surname>Depp</Surname>
<MobileNr>+173953278</MobileNr>
</tbl_address
<tbl_address>
<Forename>Michael</Forename>
<Surname>Jackson</Surname>
<MobileNr>+127425978</MobileNr>
</tbl_address
<tbl_address>
<Forename>Elvis</Forename>
<Surname>Prasley</Surname>
<MobileNr>+163645378</MobileNr>
</tbl_address
<tbl_address>
<Forename>Axl</Forename>
<Surname>Rose</Surname>
<MobileNr>+173975618</MobileNr>
</tbl_address
</NewDataSet>
为了使导出文件与导入文件看起来相同,我需要进行哪些更改?
【问题讨论】: