按WSDL信息手动生成代理类
命令行:
wsdl /language:c# /n:Entity /out:C:\Users\mengxianming\Desktop\Centrex_IMS_Client.cs C:\Users\mengxianming\Desktop\Centrex_IMS.1.8.0.wsdl
或
wsdl /language:c# /n:Entity /out:C:\Users\mengxianming\Desktop\Centrex_IMS_Client.cs http://localhost/Centrex_IMS.asmx?wsdl
wsdl命令帮助:
wsdl.exe -
使用 ASP.NET,根据 WSDL 协定文件、XSD 架构和 .discomap
发现文档,为 Xml Web Services 客户端和 Xml Web Services 生成
代码的实用工具。此工具可以与 disco.exe 一起使用。 wsdl.exe <选项> <URL 或路径> <URL 或路径> ... - 选项 - <URL 或路径> -
指向 WSDL 协定、XSD 架构或 .discomap 文档的 URL 或路径。 /nologo
取消显示版权标志。 /language:<language>
用于生成的代理类的语言。请从“CS”、“VB”、“JS”、“VJS”、
“CPP”中选择,或者为实现 System.CodeDom.Compiler.CodeDomProvider
的类提供一个完全限定的名称。默认语言为“CS”(CSharp)。
缩写形式为“/l:”。 /sharetypes
打开类型共享功能。此功能针对不同服务之间共享
的相同类型(命名空间、名称和网络签名必须相同)
创建一个具有单一类型定义的代码文件。
请使用 http:// URLs 作为命令行参数来引用
服务,或为本地文件创建一个 discomap 文档。 /verbose
指定 /sharetypes 开关时显示额外信息。
缩写形式为“/v”。 /fields
生成字段而非属性。缩写形式为“/f”。 /order
为粒子成员生成显式顺序标识符。 /enableDataBinding
在所有生成的类型上实现 INotifyPropertyChanged 接口,
以启用数据绑定。缩写形式为“/edb”。 /namespace:<namespace>
生成的代理或模板的命名空间。默认命名空间
为全局命名空间。缩写形式为“/n:”。 /out:<fileName|directoryPath>
生成的代理代码的文件名或目录路径。默认文件名是从
服务名派生的。缩写形式为“/o:”。 /protocol:<protocol>
重写要实现的默认协议。请从“SOAP”、“SOAP12”、
“HttpGet”、“HttpPost”中选择。 /username:<username>
/password:<password>
/domain:<domain>
连接到要求身份验证的服务器时使用的凭据。
缩写形式为“/u:”、“/p:”和“/d:”。 /proxy:<url>
用来处理 HTTP 请求的代理服务器的 URL。
默认为使用系统代理服务器设置。 /proxyusername:<username>
/proxypassword:<password>
/proxydomain:<domain>
连接到要求身份验证的代理服务器时使用的凭据。
缩写形式为“/pu:”、“/pp:”和“/pd:”。 /appsettingurlkey:<key>
在代码生成中用来读取 URL 属性的
默认值的配置项。默认为不从配置
文件中读取。缩写形式为“/urlkey:”。 /appsettingbaseurl:<baseurl>
计算 URL 段时使用的基 URL。
还必须指定 appsettingurlkey 选项。URL 段是
从 appsettingbaseurl 计算
WSDL 文档中的 URL 的相对 URL 的结果。缩写形式为“/baseurl:”。 /parsableerrors
输出错误,其格式与编译器报告的格式类似。 - 高级 - /server
服务器开关已被否决。请改用 /serverInterface。
使用基于协定的 ASP.NET,为 Xml Web Services 实现
生成抽象类。默认情况下,生成客户端代理
类。 /serverInterface
为 ASP.Net Web 服务的服务器端实现生成
接口。将为 wsdl 文档中的每个绑定生成
一个接口。wsdl 单独实现 wsdl 协定(实现
接口的类在类方法上不应包括下列任意一项:
更改 wsdl 协定的 Web 服务属性或序列化
属性)。缩写形式为“/si”。 /parameters:<file>
从指定的 xml 文件读取命令行选项。这样可以
指定命令行中无法使用的选项,例如选择
生成的异步编程模型类型。有关详细信息,
请参阅工具文档。缩写形式为“/par:”。
带import参数生成:
如果wsdl中包括import节点: <wsdl:import location="http://192.24.1.25:8080/services/AppealMainServiceImpl?wsdl=AppealMainService.wsdl" namespace="http://service.oas.asb.com/" /> 此时生成代理类,需要将http://192.24.1.25:8080/services/AppealMainServiceImpl?wsdl=AppealMainService.wsdl中的信息也考下来,比如保存为TestService1.wsdl D:/Program Files/Microsoft Visual Studio /VC>wsdl /language:c# /n:TestDemo /out:d:/Temp/TestService.cs D:/Temp/TestService.wsdl D:/Temp/TestService1.wsdl 应该是import里有多少wsdl,这个命令向后加几个wsdl。
附:使用SvcUtil.exe生成WCF代理类和配置文件的方法
SvcUtil.exe /out:D:\ClientCode.cs /config:D:\app.config F:\tfs2013\Proj\FiasHostApp\wsdl\ECISWebService\LteNetService.wsdl F:\tfs2013\Proj\FiasHostApp\wsdl\ECISWebService\ILteNetService.wsdl
备注:在win8下面的vs命令行工具查找方法和位置
位置:D:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts
查找方法:在开始菜单中搜索“visual studio tools”就可以找到位置
按WSDL信息手动生成代理类的更多相关文章
- WebService 使用wsdl.exe生成代理类
利用wsdl.exe生成webservice代理类: 根据提供的wsdl生成webservice代理类 1.开始->程序->Visual Studio 2005 命令提示 2.输入如下红色 ...
- Web Services 根据wsdl生成代理类
生成代理类步骤: 一:找到Visual Studio 的工具文件夹 二:用管理员方式打开本机工具命令提示 三:输入要执行的脚本 wsdl /language:C# /n:xxxx.HermesMobi ...
- 关于IIS寄宿WCF服务,客户端不能生成代理类
我在使用VS2010写好WCF的Web服务后,部署在IIS7.0上,可以在IE9上进行访问,并且能显示XML数据,如下图 然后我在项目的客户端进行服务的添加引用,如下图 VS2010自动生成代理类,但 ...
- web sevice 生成代理类及使用
一.生成代理类: VS2008下这样写 wsdl.exe /l:cs /out:D:/ProxyServices.cs http://localhost/WebService.asmx VS2010下 ...
- webservice 生成代理类
webservice的调用方式有两种: 1. 直接在vs ide中通过web引用的方式,将发布于某个位置的web服务引进到工程里面.这种方式基本上会用vs.net的人都会. 2. 通过vs 命令提 ...
- JDK动态代理[4]----ProxyGenerator生成代理类的字节码文件解析
通过前面几篇的分析,我们知道代理类是通过Proxy类的ProxyClassFactory工厂生成的,这个工厂类会去调用ProxyGenerator类的generateProxyClass()方法来生成 ...
- 调用 Https WebService 使用程序自动生成代理类
1 商家提供的WebService接口: https://ws.nciic.org.cn/nciic_ws/services/NciicServices?wsdl 2 在浏览器里打开这个地址,会显示 ...
- 根据WSDL生成代理类方式
方式一: 1.使用VS2010提供的工具wsdl.exe由WSDL文件生成cs文件 使用wsdl.exe的/serverInterface选项(或缩写的 /si)指定输入的wsdl文件(注意,如果要转 ...
- 通过WSDL命令,将WSDL生成代理类
VS2010 打开命令行窗口(开始-VS2010--Visual Studio Tools--Visual Studio Command Prompt) 输入: wsdl /l:cs /n:newN ...
随机推荐
- P1482 Cantor表(升级版)
题目描述 现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的.他是用下面这一张表来证明这一命题的: 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … ...
- new几种用法
在 C# 中,new 关键字可用作运算符.修饰符或约束. new 运算符 用于创建对象和调用构造函数. new 修饰符 用于向基类成员隐藏继承成员. new 约束 用于在泛型声明中约束可能用作类型参数 ...
- java只http改成https访问
目录 生成keystore文件 修改tomcat中的server.xml文件 配置浏览器 生成keystore文件: 1.在tomcat的bin 目录下输入命令:keytool -genkeypair ...
- poj2184 Cow Exhibition
思路: dp+滚动数组. 类似01背包. 实现: #include <iostream> #include <cstdio> #include <algorithm> ...
- Scala基础篇-05求值策略
Scala的求值策略有2种: call by value call by name 如何区分? 例子: def bar(x:Int,y: => Int) = def loop(): Int=lo ...
- 汇编2.汇编版本的helloworld
寻址方式 立即数寻址 寄存器寻址 存储器寻址 直接寻址 : mov ax, [ 01000h ]; 直接在[]内给出一个内存地址 寄存器间接寻址: mov ax ,[si]; 在[]以寄存器的值给出内 ...
- MySQL存储过程实现分页及变量的定义
delimiter是MySQL中的命令,这个命令与存储过程没什么关系. 其实就是告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了. 即改变输入结束符. 默认情况下,delimit ...
- python基础一 day3 列表方法
ls=['a','b','c','d','a','b','c','d']lst=['e','f','g','h']# 增加# ls.append('a') 将元素a添加至列表ls的尾部# ls.ext ...
- caffe proto
所在目录为: /src/caffe/proto 在caffe.proto中定义了很多结构化数据,比如LayerParameter.Datum.NetParameter.SolverParameter. ...
- sed替换字符串中的某些字符
test.txt原文内容 http://jsldfjaslfjsldfjasl/test?jlsdfjsalfjslfd 使用sed替换 sed -ri 's/(http:\/\/)[^\/]*(\/ ...