如何使用XML架构定义工具(Xsd.exe)

时间:2011-02-11 18:59:43

标签: xml vb.net xsd xsd.exe

说真的我很困惑。我有一个由类创建的.XSD,以便我可以传递给Web服务。它作为XMLSchema对象传递给webservice,现在我需要将它变成一个类,以便我可以在Web服务端创建对象。我知道XSD.exe就是答案,但如果我能弄清楚如何实现这个功能,我将会感到愚蠢。我需要它在运行时进行此转换,所以我需要将它的代码放入我的项目中,并且我看到使用XSD.exe的所有引用都谈到从命令行调用它。我的.XSD在下面。

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="Field">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Name" type="xs:string" />
        <xs:element name="Type" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

在我的项目中,它存在于XMLSchema对象中。如何将其变成课程?

- 感谢你们给予的任何帮助。

2 个答案:

答案 0 :(得分:1)

如果您在.NET中使用Web服务,则无需使用XSD。

如果您使用.NET的第一代web服务堆栈,即.ASMX webservices,则有一个wsdl.exe工具。如果您依赖于WCF,则可以使用svcutil.exe工具。

这些东西生成客户端代理代码,它提供允许Web服务客户端调用Web服务的类。它们隐含地依赖于XSD,但您不需要直接使用xsd.exe工具,也不需要直接处理.xsd文件。

答案 1 :(得分:0)

如果您使用的是.NET 2.0,那么只需使用“添加Web引用”并指向该服务的WSDL文件即可。如果您使用的是任何更高版本,请使用“添加服务参考”。

这两个都将创建与服务通信所需的类,而不需要使用XSD.EXE甚至WSDL.EXE。

相关问题