从MS Excel文件定义生成XSD文件
嗨,我有一个Excel包含字段名称和types如下面的示例。
ID : INT First_Name : String Last_Name : String Phone number : String
我想从我的描述中产生一个XSD。
有这个工具吗?
-
在记事本中,像这样写新的模式:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <data-set xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <record> <ID>12345</ID> <FirstName>First Name</FirstName> <LastName>Last Name</LastName> <PhoneNumber>555-555-5555</PhoneNumber> </record> <record> <ID>12346</ID> <FirstName>John</FirstName> <LastName>Doe</LastName> <PhoneNumber>555-555-5555</PhoneNumber> </record> </data-set>
-
将该文件另存为schema.xml
- 打开你的Excel文件。
- 在“开发人员”选项卡上,打开“XML源”任务窗格。
- 要添加XML地图,请单击XML地图
- 点击添加
- selectschema.xml并单击确定两次
- 现在只需从树中拖动(映射)4个元素到工作表(第1行)。 图像显示前两个完成。
- 在“开发人员”选项卡的“XML组”下,单击“导出”。
- 将文件保存为data-set.xml,然后按Enter键。
结果将如下所示:
在代码中对类进行build模:
public class Something { public int ID { get; set; } public string First_Name { get; set; } public string Last_Name { get; set; } public string Phone_number { get; set; } }
将其保存到.cs文件,然后进行编译。
然后使用xsd.exe生成xsd:
<?xml version="1.0" encoding="utf-8"?> <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="Something" nillable="true" type="Something" /> <xs:complexType name="Something"> <xs:sequence> <xs:element minOccurs="1" maxOccurs="1" name="ID" type="xs:int" /> <xs:element minOccurs="0" maxOccurs="1" name="First_Name" type="xs:string" /> <xs:element minOccurs="0" maxOccurs="1" name="Last_Name" type="xs:string" /> <xs:element minOccurs="0" maxOccurs="1" name="Phone_number" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:schema>