C# 的 WSDL 生成器

Posted

技术标签:

【中文标题】C# 的 WSDL 生成器【英文标题】:WSDL Generator for C# 【发布时间】:2010-09-10 17:40:16 【问题描述】:

有谁知道为用 C# 编写的服务合同(即使用 WCF 标记为“[OperationContract]”的一组方法)生成 WSDL 的好工具吗?我发现的所有工具都以相反的方式工作:从 WSDL 创建代码存根。我不想手动插入 WSDL 文件。我找到了用于 php 和 J2EE 的工具,但没有找到 C#。谢谢!

【问题讨论】:

【参考方案1】:

svcutil 或者只是快速托管它并点击 MEX 点:)

【讨论】:

【参考方案2】:

最简单的做法是使用基地址设置托管服务,然后从浏览器中点击它,并在末尾附加“?wsdl”。

这是一个指定了基地址的服务配置示例。请注意,这在您的配置中的 <configuration><services> 元素中:

  <service name="MyServiceName" behaviorConfiguration="MyServiceBehavior">
    <host>
      <baseAddresses>
        <add baseAddress="http://localhost:9000/MyService"/>
      </baseAddresses>
    </host>
    <endpoint address="net.tcp://localhost:9001/MyService"
              binding="netTcpBinding"
              contract="IMyService"
              bindingConfiguration="MyServiceBinding"/>
  </service>

托管后,只需转到http://localhost:9000/MyService?wsdl 即可查看 WSDL 定义。

【讨论】:

【参考方案3】:

两种方式:

a) 下载 wsdl 文件并执行以下步骤

i) 以管理员身份打开 Visual Studio 命令提示符。

ii) 键入以下命令:

wsdl.exe [您的 WSDL 文件的路径]

b) 带端点

i) 以管理员身份打开 Visual Studio 命令提示符。

ii) 键入以下命令: wsdl.exe http://localhost:9000/MyService

【讨论】:

以上是关于C# 的 WSDL 生成器的主要内容,如果未能解决你的问题,请参考以下文章

C# 利用VS自带的WSDL工具生成WebService服务类

C# 利用VS自带的WSDL工具生成WebService服务类

C# 利用VS自带的WSDL工具生成WebService服务类

C# 利用VS自带的WSDL工具生成WebService服务类

C#中用VS2010怎么生成数据实体类

在 SvcUtil 和 WSDL 代码生成期间抓取 KnownType 属性