0

说真的,我很困惑。我有一个由类制成的 .XSD,以便我可以传递给 Web 服务。它把它作为一个 XMLSchema 对象传递给 web 服务,现在我需要将它变成一个类,以便我可以在 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 对象中。我如何把它变成一个类?

- 非常感谢您提供的任何帮助。

4

2 回答 2

1

如果您在 .NET 中进行 Web 服务,则无需摆弄 XSD。

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

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

于 2011-02-11T19:04:07.267 回答
0

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

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

于 2011-02-11T19:17:14.440 回答