0

我在使用 C# 编程 WCF 服务应用程序方面非常新。目前我正在学习,我现在正在尝试的是从 WSDL 创建一个 Web 服务应用程序类。首先,我创建了一个 WSDL,它看起来像帖子末尾的 WSDL。现在我想使用工具“svcUtil”来创建我的班级。在命令提示符下我试图写

C:\program 文件 (x86)\Microsoft sdks\windows\v7.0a\bin>svcutil /language:csharp "c:\users\myNick\Documents\visual studio 2010\projects\myWSDL.wsdl"

并期望将类文件写入项目文件夹中。但我总是收到以下错误消息:

“警告:未生成代码。如果您尝试生成客户端,这可能是因为元数据文档不包含任何有效的合同或服务,或者因为发现所有合同/服务都存在于 /reference 程序集中。验证您将所有元数据文档传递给该工具。

Waring:如果您想从模式生成数据合同,请确保使用 /datacontractonly 选项。”

我在互联网上搜索一些帮助,但无法弄清楚出了什么问题。我的 WSDL 中是否缺少任何内容?据我所知,一切都应该在那里,还是我错了?

感谢帮助!

此致

马布尔

    <definitions>
  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://MyCompany.com/MyService/wsdl/abstract" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:complexType name="Request">
      <xs:sequence>
        <xs:element name="Value" type="xs:string">
          <xs:annotation>
            <xs:documentation>
              Include here either string with XML escaped

              characters or in CDATA section
            </xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
    <xs:complexType name="FaultMessage">
      <xs:sequence>
        <xs:element name="Value" type="xs:string">
          <xs:annotation>
            <xs:documentation>
              Include here either string with XML escaped

              characters or in CDATA section
            </xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:schema>
  <types>
    data type definitions........
  </types>

  <message>
    <part name="FaultMessage" type="FaultMessage"></part>
  </message>
  <message name="RequestMessage">
    <part name="request" type="Request"/>
  </message>

  <portType name="MyInterface">
    <operation name="sendData">
      <input message="RequestMessage"></input>
      <fault name="fault1" message="FaultMessage"/>
    </operation>
  </portType>

  <binding xmlns:soap="http://www.w3.org/2001/XMLSchema" type="MyInterface" name="b1">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
    <operation>
      <soap:operation soapAction="http://example.com/sendData"/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
    </operation>
  </binding>
</definitions>
4

0 回答 0