zoukankan      html  css  js  c++  java
  • Web 服务描述语言工具 (Wsdl.exe)[FROM msdn]

    Web 服务描述语言工具 (Wsdl.exe)

    Web 服务描述语言工具从 WSDL 协定文件、XSD 架构和 .discomap 发现文档为 XML Web services 和 XML Web services 客户端生成代码。

    wsdl [options] {URL | path}

    参数
    说明

    URL

    指向 WSDL 协定文件 (.wsdl)、XSD 架构文件 (.xsd) 或发现文档 (.disco) 的 URL。请注意,您不能将 URL 指定为 .discomap 发现文档。

    Path

    本地 WSDL 协定文件 (.wsdl)、XSD 架构文件 (.xsd) 或发现文档(.disco 或 .discomap)的路径。

    选项
    说明

    /appsettingurlkey: key

    /urlkey: key

    指定在生成代码时用于读取 URL 属性的默认值的配置键。使用 /parameters 选项时,此值为 <appSettingUrlKey> 元素并且包含一个字符串。

    /appsettingbaseurl: baseurl

    /baseurl: baseurl

    指定计算 URL 片段时所使用的基 URL。此工具通过将相关 URL 从 baseurl 参数转换为 WSDL 文档中的 URL 来计算 URL 片段。您必须用此选项来指定 /appsettingurlkey 选项。使用 /parameters 选项时,此值为 <appSettingBaseUrl> 元素并且包含一个字符串。

    /d[omain]:domain

    指定连接到要求身份验证的服务器时要使用的域名。使用 /parameters 选项时,此值为 <domain> 元素并且包含一个字符串。

    /l[anguage]:language

    指定用于所生成的代理类的语言。您可以指定 CS(C#;默认)、VB (Visual Basic)、JS (Jscript) 或 VJS (Visual J#) 作为语言参数。还可以指定实现 System.CodeDom.Compiler.CodeDomProvider 类的类的完全限定名称。使用 /parameters 选项时,此值为 <language> 元素并且包含一个字符串。

    /n[amespace]:namespace

    指定所生成的代理或模板的命名空间。默认命名空间是全局命名空间。使用 /parameters 选项时,此值为 <namespace> 元素并且包含一个字符串。此元素必须在参数文件中。

    /nologo

    取消显示 Microsoft 启动标题。使用 /parameters 选项时,此值为 <nologo> 元素并且包含 truefalse

    /order

    在粒子成员上生成显式顺序标识符。

    /o[ut]:filename 或 directoryname

    指定用于保存所生成的代理代码的文件(或目录)。也可以指定要在其中创建该文件的目录。该工具将从 XML Web services 名称来导出默认的文件名称。该工具将生成的数据集保存在不同的文件中。使用 /parameters 选项时,此值为 <out> 元素并且包含一个字符串。

    /parameters

    从指定的 xml 文件读取命令行选项。使用此选项,一次可向 Wsdl.exe 工具传递很多选项。缩写形式为“/par:”。可选元素包含在 <wsdlParameters xmlns="http://microsoft.com/webReference/"> 元素中。有关详细信息,请参见“备注”部分。

    /parsableerrors

    以类似于语言编译器所使用的错误报告格式显示错误。使用 /parameters 选项时,此值为 <parsableerrors> 元素,并且为 truefalse

    /p[assword]:password

    指定连接到要求身份验证的服务器时要使用的密码。使用 /parameters 选项时,此值为 <password> 元素并且包含一个字符串。

    /protocol: protocol

    指定要实现的协议。可以指定 SOAP(默认值)、HttpGetHttpPost 或在配置文件中指定的自定义协议。使用 /parameters 选项时,此值为 <protocol> 元素并且包含一个字符串。

    /proxy: URL

    指定用于 HTTP 请求的代理服务器的 URL。默认为使用系统代理设置。使用 /parameters 选项时,此值为 <proxy> 元素并且包含一个字符串。

    /proxydomain: domain

    /pd: domain

    指定连接到要求身份验证的代理服务器时要使用的域。使用 /parameters 选项时,此值为 <proxydomain> 元素并且包含一个字符串。

    /proxypassword: password

    /pp: password

    指定当连接到要求身份验证的代理服务器时要使用的密码。使用 /parameters 选项时,此值为 <proxypassword> 元素并且包含一个字符串。

    /proxyusername: username

    /pu: username

    指定连接到要求身份验证的代理服务器时要使用的用户名。使用 /parameters 选项时,此值为 <proxyusername> 元素并且包含一个字符串。

    /server

    根据协定生成 XML Web services 的抽象类。默认为生成客户端代理类。使用 /parameters 选项时,此值为 <style> 元素并且包含“server”。

    /serverInterface

    为 ASP.NET Web 服务的服务器端实现生成接口。为 WSDL 文档中的每个绑定生成一个接口。WSDL 单独实现 WSDL 协定(实现接口的类不应在类方法中包括以下属性之一:更改 WSDL 协定的 Web 服务属性或序列化属性)。缩写形式为“/si”。使用 /parameters 选项时,此值为 <style> 元素并且包含“servicerInterface”。

    /sharetypes

    打开类型共享功能。该功能使用一个类型定义,为不同服务所共享的相同类型创建一个代码文件(命名空间、名称和连网签名必须相同)。引用具有“http://”URL 的服务作为命令行参数,或为本地文件创建一个 discomap 文档。使用 /parameters 选项时,此值为 <sharetypes> 元素,并且为 truefalse

    /u[sername]:username

    指定连接到要求身份验证的服务器时要使用的用户名。使用 /parameters 选项时,此值为 <username> 元素并且包含一个字符串。

    /?

    显示该工具的命令语法和选项。

      备注

    .wsdl 文件是一个使用称作 Web 服务描述语言 (WSDL) 的 XML 语法编写的 XML 文档。此文件定义 XML Web services 的行为方式并指示客户端如何与该服务交互。

    可以使用 Web 服务发现工具 (Disco.exe) 获得 XML Web services 的发现文档。由此工具生成的 .discomap、.disco、.wsdl 和 .xsd 文件可以用作 Wsdl.exe 的输入。

    当您使用 Wsdl.exe 创建代理类时,将用指定的编程语言创建一个源文件。在为代理类生成源代码的过程中,该工具确定用于服务说明中指定的对象的最佳类型。在某些情况下,该工具使用最小公分母方法将这些对象转换成一个类型。因此,代理类中的生成类型可能不是开发人员想要或预期的类型。例如,当 Wsdl.exe 在服务说明中遇到 ArrayList 类型时,它将在生成的代理类中创建一个对象数组。若要确保对象类型转换正确,请打开包含生成的代理类的文件,将所有不正确的对象类型更改成所需的对象类型。

    • /parameters 选项指定一个文件,该文件包含对应于大多数命令提示符选项的元素。某些命令提示符选项只有以 /parameters 文件格式的形式才可用。

    /parameters 选项接受的 XML 文件格式是外部 <wsdlParameters xmlns="http://microsoft.com/webReference/"> 元素内的一系列元素。如果指定了命令提示符值,并且使用了包含不同选项或值的 /parameters 文件,则使用在命令提示符处指定的值。<wsdlParameters xmlns="http://microsoft.com/webReference/"> 元素必须包含一个 <nologo> 元素、一个 <parsableerrors> 元素和一个 <sharetypes> 元素。

    多个选项作为 <webReferenceOptions> 元素(必须包含一个 <verbose> 元素)的子元素传递。<webReferenceOptions> 的其他子元素为:

    • <style>。包含“client”、“server”,或者“serverInterface”。

    • <schemaImporterExtension>。包含任意数量的 <type> 元素。

    • <codeGenerationOptions>。可接受由下列字符串组成的空格分隔的集合。

    • “properties”

    • “newAsync”

    • “oldAsync”

    • “order”

    • “enableDataBinding”

    请参见“示例”部分获取 /parameters 选项的一些演示。

      示例

    下面的命令用 C# 语言创建 XML Web services 的客户端代理类。

    复制代码

    wsdl http://hostServer/WebserviceRoot/WebServiceName.asmx?WSDL

    下面的命令用 C# 语言为位于指定 URL 处的 XML Web services 创建客户端代理类。该工具将客户端代理类保存在 myProxyClass.cs 文件中。

    复制代码

    wsdl /out:myProxyClass.cs http://hostServer/WebserviceRoot/WebServiceName.asmx?WSDL

    下面的命令用 Microsoft Visual Basic 语言为位于指定 URL 处的 XML Web services 创建客户端代理类。该工具将客户端代理类保存在 myProxyClass.vb 文件中。

    复制代码

    wsdl /language:VB /out:myProxyClass.vb http://hostServer/WebserviceRoot/WebServiceName.asmx?WSDL
    • 下面的代码示例演示一个基本的 /parameters WSDL 文件,其中只编写了可在命令提示符处与 URL 参数结合使用的必需元素。

    复制代码

    <wsdlParameters xmlns="http://microsoft.com/webReference/">   <nologo>true</nologo>   <parsableerrors>true</parsableerrors>   <sharetypes>true</sharetypes>
    </wsdlParameters>

    WSDL 文档已通过 <documents> 元素添加到 /parameters WSDL 文件中,如下面的代码示例所示。在 <documents> 元素中可以使用任意数目的 <document> 元素。

    复制代码

    <wsdlParameters xmlns="http://microsoft.com/webReference/">   <nologo>true</nologo>   <parsableerrors>true</parsableerrors>   <sharetypes>true</sharetypes>   <documents>     <document>http://www.contoso.com/service.asmx?WSDL</document>   </documents>
    </wsdlParameters>

    下面的 /parameters WSDL 文件演示 <webReferenceOptions> 元素内的 <codeGenerationOptions><style> 元素的用法。本例中,文件在代理代码中启用新的数据绑定样式,并指定了一个架构导入程序扩展,指定输出不显示详细信息,并指定 Wsdl.exe 创建客户端代理。

    复制代码

    <wsdlParameters xmlns="http://microsoft.com/webReference/">   <nologo>true</nologo>   <parsableerrors>true</parsableerrors>   <sharetypes>true</sharetypes>   <documents>     <document>http://www.contoso.com/service.asmx?WSDL</document>   </documents>   <webReferenceOptions>     <verbose>false</verbose>     <codeGenerationOptions>properties newAsync enableDataBinding</codeGenerationOptions>     <schemaImporterExtension>       <type>MyNamespace.MyCustomImporterExtension,ExtensionLibrary</type>     </schemaImporterExtensions>     <style>client</style>   </webReferenceOptions>
    </wsdlParameters>

      请参见

    参考
    .NET Framework 工具
    Web 服务发现工具 (Disco.exe)
    SDK 命令提示
    其他资源
    创建 XML Web 服务代理
    XML Web 服务描述
    XML Web 服务概述
  • 相关阅读:
    lvs+keepalived集群架构服务
    GlusterFS分布式存储系统
    Zabbix监控平台(三)生产环境案例
    Zabbix监控平台(二)深入了解
    Zabbix监控平台(一)搭建部署与概述
    Memcached数据库缓存
    Mariadb 基于Mycat实现读写分离
    基于mysqld_multi实现MySQL多实例配置
    tomcat-APR配置及三种工作模式简介
    Session服务器之Memcached与Redis
  • 原文地址:https://www.cnblogs.com/flyinthesky/p/1593115.html
Copyright © 2011-2022 走看看