在程序中调用某个 WCF Services 一般按照如下步骤进行:

生成对应 Service 的代理类。
程序创建该代理类实例,访问指定方法。

生成代理类

可通过在 Visual Studio 中针对某个项目右键菜单中选择添加服务引用的方式来生成代理类。但是这种方式不便设定参数以及删除额外生成的 ServiceReferences.ClientConfig 文件,所以我们一般采用命令行方式。

生成

针对 Silverlight 应用程序,一般采用如下命令行

@ECHO OFF
@ECHO 生成代理类...
"C:\Program Files (x86)\Microsoft SDKs\Silverlight\v5.0\Tools\SlSvcUtil.exe" http://servername/ServiceUrl /edb /n:"*,Sunlight.Silverlight.Dms" /r:"C:\Program Files (x86)\Microsoft Silverlight\5.1.20125.0\System.Windows.dll" /o:ServiceClient.cs
DEL ServiceReferences.ClientConfig

应根据实际情况调整所访问的 WCF Service 地址(http://servername/ServiceUrl)、默认命名空间(Sunlight.Silverlight.Dms)以及生成的 Client文件地址(ServiceClient.cs)。关于 SlSvcUtil.exe 的详细解释请参见 Using SLsvcUtil.exe to Access a Service 。 

调整

代理类需要将当前网站指定为默认的 WCF Service 访问地址并采用网站目前所使用的协议,这里需要人工调整。(ServiceClient 应调整为代理类的类名)

删除 ServiceClient 类的非空参数的构造函数。

调整 ServiceClient 类的空参数的构造函数如下

public ServiceClient()

: base(new BasicHttpBinding(Application.Current.Host.Source.Scheme == Uri.UriSchemeHttps ? BasicHttpSecurityMode.Transport : BasicHttpSecurityMode.None),

new EndpointAddress(Utils.MakeServerUri("/ServiceUrl"))) {

SvsUtil.exe生成服务文件的更多相关文章

  1. 使用svcutil.exe 生成服务的代码

    @echo offcall "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"svcuti ...

  2. C# wsdl.exe 生成类文件

    wsdl.exe D:\XXX\demand\demand.\wsdl\XXX.wsdl /\wsdl\class 在 vs tools:Developer Command Prompt For VS ...

  3. Visual Studio 不生成.vshost.exe和.pdb文件的方法【转】

    Visual Studio 不生成.vshost.exe和.pdb文件的方法[转] 使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost ...

  4. webservice 服务端例子+客户端例子+CXF整合spring服务端测试+生成wsdl文件 +cxf客户端代码自动生成

    首先到CXF官网及spring官网下载相关jar架包,这个不多说.webservice是干嘛用的也不多说. 入门例子 模拟新增一个用户,并返回新增结果,成功还是失败. 大概的目录如上,很简单. Res ...

  5. 利用Resgen.exe 批量生成resources文件

    Resgen.exe(资源文件生成器)  您可以直接如图操作 转换时在 文本中先写好要转换的文件然后 全选 复制到控制台中 Filename.resx 要转换的文件 ResName1.resource ...

  6. Visual Studio 不生成.vshost.exe和.pdb文件的方法

    使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost.exe」和「.pdb」的文件. 一.先解释一下各个文件的作用: .pdb文件: 程 ...

  7. VS2010中配置C#Project不生成.vhost.exe和.pdb文件的方法

    在VS2010中编译C#工程时,在C#的Project的属性界面的Build选项卡中当Configuration : Relese 时,依然会生成扩展名为.vhost.exe和.pdb文件. 其中.p ...

  8. 《jdk10》删除javah.exe文件,在Android studio编译jni,使用jdk10生成头文件

    今天在用“死丢丢”编译so包的时候,只要一输入"javah -jni..."的命令就会一直提示 'javah'不是内部命令或外部命令,也不是可运行的程序或批处理文件 找了很久才发现 ...

  9. C#Project不生成.vhost.exe和.pdb文件的方法

    编译C#工程时,在C#的Project的属性界面的Build选项卡中当Configuration : Relese 时,依然会生成扩展名为.vhost.exe和.pdb文件. 其中.pdb是debug ...

随机推荐

  1. 用node.js进行微信公众平台的开发

    基本原理 用nodejs怎样来实现对微信公众平台的开发呢? 别的就不多说了,先来简单介绍微信公众平台的基本原理. 微信服务器就相当于一个转发服务器,终端(手机.Pad等)发起请求至微信服务器,微信服务 ...

  2. 【实验一 】Spring Boot 集成 hibernate & JPA

    转眼间,2018年的十二分之一都快过完了,忙于各类事情,博客也都快一个月没更新了.今天我们继续来学习Springboot对象持久化. 首先JPA是Java持久化API,定义了一系列对象持久化的标准,而 ...

  3. bootstrap 模式对话框

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  4. 【C++自我精讲】基础系列五 隐式转换和显示转换

    [C++自我精讲]基础系列五 隐式转换和显示转换 0 前言 1)C++的类型转换分为两种,一种为隐式转换,另一种为显式转换. 2)C++中应该尽量不要使用转换,尽量使用显式转换来代替隐式转换. 1 隐 ...

  5. curl使用例子

    地址:http://phpbook.phpxy.com/34771 参考:http://php.net/manual/zh/function.curl-setopt.php 我们将curl的步骤分为以 ...

  6. iOS #import和@class 区别

    @class和#import相似. 1.@class用于 forward-class declaration,只能使用@class, @class class2 @interface class1 { ...

  7. 使用Navicat for MySQL

    1.打开Navicat for MySQL 2.新建连接 3.新建数据库 4.在新建的数据库上运行SQL文件

  8. hdu 2167(状压dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2167 思路:经典的状压dp题,前后,上下,对角8个位置不能取,状态压缩枚举即可所有情况,递推关系是为d ...

  9. laragon 使用(php版本升级切换)

    php版本升级切换 1.下载对应不带 nts 的php版本(http://windows.php.net/download/),然后解压放到\laragon\bin\php目录下 2.记得改环境变量下 ...

  10. mybatis总结(二)

    实现简单的crud,上一节已经进行最简单的查询 这次在oracle数据库中操作,就在oracle实例中操作,分别是Dept表和Emp表,所以配置文件需要改动. 1.实体类 Dept类 public c ...