在程序中调用某个 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"))) {

最新文章

  1. 关于input标签和placeholder在IE8,9下的兼容问题
  2. jquery placeholder
  3. C#写入和读出文本文件
  4. Oracle设置自动递增的方法
  5. pwnable simple login
  6. SAP ALV内嵌(In-place)Excel的问与答
  7. runtime使用小例子 - 给对象O-C属性赋值
  8. 1103. Integer Factorization (30)
  9. learning nodejs 2 - connect middleware
  10. JAVA锁的可重入性
  11. Pentaho Data Integration (三) Pan
  12. mybatis_Generator配置
  13. Spring Mobile是如何判断访问设备的类型的
  14. 单片机C语言实现的采用DS18B20的温度检测装置
  15. table-一列细分为多列(合并单元格)
  16. MySQL(基础技能)
  17. C# webbrowser全掌握(二)
  18. Linux信号机制代码示例
  19. virtualbox+vagrant学习-3-Vagrant Share-4-Vagrant Connect
  20. operator[],识别读操作和写操作

热门文章

  1. 微信抢红包微信 PHP代码实现
  2. python - 判断是否为正小数和正整数
  3. eclipse 下安装 lombok.jar
  4. 在线生成条形码的解决方案(39码、EAN-13)
  5. HTML特殊字符的html、js、css写法汇总
  6. 使用python封装get+post请求
  7. c++ 类声明
  8. sql server数据库行转列及巧用case when、和row_number用法例子
  9. 向spider中传递参数
  10. Kubernetes初探:原理及实践应用