你的位置:首页 > ASP.net教程

[ASP.net教程]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/ningbao911@126/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