编程方式配置客户端
如果不借助于配置文件,客户端也可以通过编程方式创建匹配服务终结点的地址与绑定对象,并将它们传递给代理类的构造函数。既然代理的泛型类型参数就是契约,因此不必为构造函数提供契约。为了表示地址,客户端需要实例化EndpointAddress类,定义如下:
public class EndpointAddress
{
public EndpointAddress(string uri);
//更多成员
}
例1-20演示了编程方式配置客户端的技术,所示代码的功能与例1-16等价,它们使用的目标服务则为例1-9的定义。
例1-20:编程方式配置客户端
Binding wsBinding = new WSHttpBinding();
EndpointAddress endpointAddress = new
EndpointAddress("http://localhost:8000/MyService/");
MyContractClient proxy = new MyContractClient(wsBinding,endpointAddress);
proxy.MyMethod();
proxy.Close();
与在配置文件中使用绑定节的方法相似,客户端可以通过编程方式配置绑定属性:
WSHttpBinding wsBinding = new WSHttpBinding();
wsBinding.SendTimeout = TimeSpan.FromMinutes(5);
wsBinding.TransactionFlow = true;
EndpointAddress endpointAddress = new
EndpointAddress("http://localhost:8000/MyService/");
MyContractClient proxy = new MyContractClient(wsBinding,endpointAddress);
proxy.MyMethod();
proxy.Close();
注意,使用Binding类的具体子类,是为了访问与绑定相关的属性,例如事务流。
编程方式配置与管理方式配置
目前介绍的配置客户端与服务的两种技术各有所长,相辅相成。管理配置方式允许开发者在部署服务之后,修改服务与客户端的主要特性,而不需要重新编译或重新部署。主要缺陷则是不具备类型安全,只有在运行时才能发现配置的错误。
如果配置的决策完全是动态的,那么编程配置方式就体现了它的价值,它可以在运行时基于当前的输入或条件对服务的配置进行处理。如果判断条件是静态的,而且是恒定不变的,就可以采取硬编码方式。例如,如果我们只关注于进程内托管的调用,就可以采取硬编码方式,使用NetNamePipeBinding以及它的配置。不过,大体而言,大多数客户端和服务都会使用配置文件。
| 回书目 上一节 下一节 |
|
· C语言之基础自测获奖名.. · Linux服务器架设自测获.. · 边界网关安全防护自测.. · Cisco CCNA最新真题自.. · 我在美联储监管银行 书.. · 我在美联储监管银行 目.. |
· 我在美联储监管银行 前.. · 入侵的艺术 目录 · 入侵的艺术 前言 · 网管员全真面试题自测.. · 子弹的本质—— 形势没.. · 学习大量的词汇—— 对.. |
|
||||
| · 华为、贝恩资本22亿美.. · 中间件应用技术专题 · 杀毒软件优化和使用技巧 · 信息安全等级保护专题 · 补丁自动分发管理策略.. · 杀毒王牌 · AMD Phenom三核处理器.. · 国际文档格式标准开战 |
· 51CTO主编推荐经典专题 · 假期读书充电 · 2007盘点专题:有多少.. · 主流品牌防火墙配置 · Linux防火墙 · 了解统一威胁管理(UTM).. · 入侵防护系统(IPS)初探 · 如何优化IT 控制能耗 |
|||
|
||||
| · VPN技术 · SQL Server 2005全解 · SOA 面向服务架构 · 子网掩码教程 · SQL Server 2005全解 · 中间件应用技术专题 · 三层交换技术专题 · Windows远程桌面应用 |
· 深入了解PGP加密技术 · MySQL数据库备份 · 病毒查杀专题 · VPN技术 · Solaris 10 配置管理 · Linux 基础 · SSL VPN详细知识 · Linux防火墙 |
|||
|
||||
| · VPN技术 · SQL Server 2005全解 · 中间件应用技术专题 · SQL Server 2005全解 · SOA 面向服务架构 · 子网掩码教程 · 三层交换技术专题 · Windows远程桌面应用 |
· MySQL数据库备份 · 身份认证技术 · 病毒查杀专题 · 清除流氓软件——51CTO.. · SSL VPN详细知识 · Sniffer安全技术从入门.. · 常用交换机典型配置 · 路由器设置与口令恢复 |
|||