WCF通过SVCUtil.exe生成客户端代理类和配置文件(转)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WCF通过SVCUtil.exe生成客户端代理类和配置文件(转)相关的知识,希望对你有一定的参考价值。

WCF服务调用通过两种常用的方式:

   1:一种是借助代码生成工具SvcUtil.exe或者添加服务引用的方式。 

   2:一种是通过ChannelFactory直接创建服务代理对象进行服务调用。 

 

本文只针对通过SvcUtil.exe工具生成代理类和对应配置文件来讲

一:通过cmd命令行生成代理类和对应配置文件

1.找到如下地址“C:\\Windows\\System32\\cmd.exe”  命令行工具,右键以管理员身份运行(视系统是否为win7 而定) 
2.输入如下命令:

C:\\>cd C:\\Program Files\\Microsoft SDKs\\Windows\\v7.0A\\bin
C:\\Program Files\\Microsoft SDKs\\Windows\\v7.0A\\bin>SvcUtil.exe /out:clientCode.cs
 /config:\\app.config http://localhost:62026/CalculatorService.svc

         说明:
              参数:  “C:\\ClientCode.cs ” ,是指生成的代理类输出存放到的地址
              参数:  “C:\\app.config ” ,是指存放到调用WCF服务程序目录下的配置文件的输出存放地址
              参数:  “http://localhost:81/WCFServiceTest/CNPatentSearchService.svc” ,是指部署到IIS 的WCF服务的地址或者寄宿后的WCF服务的地址
              
3.运行以上命令后,会在"C:\\"目录下生成两个文件,ClientCode.cs  和app.config
 (C:\\app.config 中已经为我们配置好了WCF服务的根节点等必须的信息,当然,如果您也可以自己对部分参数进行修改)
      

二:通过将SvcUtil.exe添加到VS外部工具中,然后调用VS中添加后的工具来生成

1:在VS2015添加Svcutil工具

    1):在VS2015的 工具菜单中选择外部工具,如下图 

技术分享

    2):在弹出窗口中,点击添加,如下图

技术分享

 

    3):在标题栏输入SvcUtil命令栏选择SvcUtil.exe所在的目录,初始目录栏选择生成的客户端代码和配置文件所放的目录,

选上提示输入参数,不选上退出时关闭,点击确定完成添加。

 

2:添加好以后,点击VS2015工具菜单下的SvcUtil,如下图

                           技术分享

  在参数栏中输入提供元数据的服务终结点的 URL,如下图

                         技术分享

 

 

 

  点击确定,在弹出的命令行中会显示成功与否和相关信息。如下图

 

技术分享

 

    如果成功的话会生成两个文件,一个是包含了服务端Contract和对应于服务端service的本地代理类的cs文件,一个是WCF配置文件。
    将这两个文件拷到项目中并将output.config改名为app.config就可以了。

 

 参考文章:

http://blog.163.com/[email protected]/blog/static/3743053820132133616282/

http://www.cnblogs.com/luowanli/archive/2012/02/24/markeluo_wcfiis.html

http://www.cnblogs.com/zfanlong1314/archive/2012/03/23/2413122.html

 

以上是关于WCF通过SVCUtil.exe生成客户端代理类和配置文件(转)的主要内容,如果未能解决你的问题,请参考以下文章

WCF系列WCF客户端怎么消费服务

WCF引用服务和直接用接口的区别

WCF 服务 + SvcUtil 生成意外的对象结构

使用 WCF 和 Data Contract Serializer 时需要生成 XmlSerializers 程序集

快速创建WCF服务和svcutil.exe工具使用

如何为具有共享类型的多个 WCF 服务生成客户端代码