这是一个示例,如果您在本地文件夹中有 WSDL(或 XSD)文件,则 Visual Studio 使用命令行实用程序手动生成 Web 服务。 (WSDL 是 Web 服务定义文件)
在我的例子中,这是一个批处理文件...并且还生成一个 VB 文件,但很容易切换到 C#,我假设使用最后一个命令行参数。
cd C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin
wsdl.exe "c:\development\WebServiceClients\CORE_Webservice_Interface_WS.wsdl" /fields /n:Telus /out:"c:\Development\output\WebServiceClients\referencefile.vb" /l:VB
WSDL.EXE 是这个的核心...下面是选项...
c:\Program Files (x86)\Microsoft Visual Studio 8\SDK\v2.0\Bin>wsdl /?
Microsoft (R) Web 服务描述语言实用程序
[Microsoft (R) .NET Framework,版本 2.0.50727.42]
版权所有 (C) 微软公司。保留所有权利。
wsdl.exe -
为 xml Web 服务客户端和 xml Web 服务生成代码的实用程序
从 WSDL 合同文件、XSD 架构和 .discomap 使用 ASP.NET
发现文件。此工具可与disco.exe 配合使用。
wsdl.exe ...
-
WSDL 契约、XSD 模式或 .discomap 文档的 url 或路径。
/nologo
抑制横幅。
/语言:
用于生成的代理类的语言。从“CS”中选择,
'VB'、'JS'、'VJS'、'CPP' 或为类提供完全限定名称
实现 System.CodeDom.Compiler.CodeDomProvider。默认
语言是“CS”(CSharp)。缩写形式是 '/l:'。
/sharetypes
打开类型共享功能。此功能创建一个代码文件
不同类型之间共享的相同类型的单一类型定义
服务(命名空间、名称和线路签名必须相同)。
使用 http:// URL 作为命令行参数引用服务
或为本地文件创建一个 discomap 文档。
/详细
指定 /sharetypes 开关时显示额外信息。
缩写形式是 '/v'。
/字段
生成字段而不是属性。缩写形式是 '/f'。
/订单
在粒子成员上生成明确的顺序标识符。
/启用数据绑定
在所有生成的类型上实现 INotifyPropertyChanged 接口
启用数据绑定。缩写形式是“/edb”。
/命名空间:
生成的代理或模板的命名空间。默认命名空间
是全局命名空间。缩写形式是 '/n:'。
/输出:
生成的代理代码的文件名或目录路径。默认
文件名派生自服务名称。缩写形式是 '/o:'。
/协议:
覆盖要实现的默认协议。从 'SOAP' 中选择,
'SOAP12'、'HttpGet'、'HttpPost'。
/用户名:
/密码:
/领域:
连接到服务器时使用的凭据
需要身份验证。短格式是 '/u:'、'/p:' 和 '/d:'。
/代理:
用于 http 请求的代理服务器的 url。
默认是使用系统代理设置。
/代理用户名:
/代理密码:
/代理域:
连接到代理服务器时使用的凭据
需要身份验证。短格式是 '/pu:'、'/pp:' 和 '/pd:'。
/appsettingurlkey:
在代码生成中使用的配置键来读取默认值
Url 属性的值。默认是不从配置中读取
文件。短格式是'/urlkey:'。
/appsettingbaseurl:
计算 url 片段时使用的基本 url。这
还必须指定 appsettingurlkey 选项。网址片段是
从 appsettingbaseurl 计算相对 url 的结果
到 WSDL 文档中的 url。缩写形式是 '/baseurl:'。
/可解析错误
以类似于编译器报告的格式打印错误。
/服务器
服务器交换机已被弃用。请改用 /serverInterface。
使用为 xml Web 服务实现生成一个抽象类
基于合同的 ASP.NET。默认是生成客户端代理
类。
/服务器接口
为 ASP.Net 的服务器端实现生成接口
网络服务。为 wsdl 中的每个绑定生成一个接口
文件。 wsdl 单独实现了 wsdl 契约(类
实现该接口的不应包括以下任何一项
关于类方法:Web Service 属性或序列化
更改 wsdl 合同的属性)。缩写形式是 '/si'。
/参数:
从指定的 xml 文件中读取命令行选项。这让你
指定命令行中不可用的选项,例如选择
生成哪种类型的异步编程模型。有关详细信息,
请参阅工具文档。缩写形式是 '/par:'。