看起来 XSD.exe 不是 Visual Studio 2010 的一部分。
在 VS2010 中提供了什么替代品?
看起来 XSD.exe 不是 Visual Studio 2010 的一部分。
在 VS2010 中提供了什么替代品?
这可以在VS 2010命令提示符中使用。打开VS 2010命令提示符并键入“xsd /?”。
开始 -> 所有程序 -> 微软 Visual Studio 2010 -> Visual Studio 工具 -> Visual Studio 命令提示符
您可以从此处使用 xsd.exe。
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\xsd.exe
XML模式定义工具可以在菜单"开始"中找到:
开始->所有程序->Microsoft Visual Studio 2010->Visual Studio命令提示符(2010)
你会看到一个命令行界面的欢迎信息:
Setting environment for using Microsoft Visual Studio 2010 x86 tools.
D:\Program Files\Microsoft Visual Studio 10.0\VC>
您可以从XML文件创建一个XML架构,例如:
example.xml:
<?xml version="1.0" encoding="utf-8"?>
<country>
<country_name>France</country_name>
<population>59.7</population>
</country>
要做到这一点,请输入以下内容:
I:\example.xml /outputdir:D:\xml2xsd
...
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:\xml2xsd\example.xsd'.
D:\Program Files\Microsoft Visual Studio 10.0\VC>
D:\xml2xsd\
中出现了这样一个模式:
example.xsd:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="country">
<xs:complexType>
<xs:sequence>
<xs:element name="country_name" type="xs:string" minOccurs="0" />
<xs:element name="population" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="country" />
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
这里有一个完整的选项列表 - http://msdn.microsoft.com/en-us/library/x6c1kb0s.aspx
至于替代方案,您可以搜索转换器以执行xsd.exe的操作:
XDR 转换为 XSD
XML 转换为 XSD
XSD 转换为 DataSet
XSD 转换为类
类 转换为 XSD
祝好运。
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\
(开始 > 编辑系统环境变量 > 环境变量 > 在“系统变量”下编辑“路径”)
然后我就可以启动Visual Studio命令提示符(2010),并输入:
xsd.exe /?
一般来说,DTD是XSD的替代方案,并且在Visual Studio中完全支持DTD。然而,DTD是一种较弱的语言,因为有些东西无法用它来表达。例如,它不支持像XSD那样多的数据类型,也没有断言。无论如何,如果您对此不太挑剔,可以尝试使用DTD。