摘要: 由于信道管理器在客户端和服务端所起的不同作用,分为信道监听器和信道工厂。和服务端的信道监听其相比,处于客户端的信道工厂显得简单。从名称就可以看得出来,信道工厂的作用就是单纯的创建用于消息发送的信道。我们先来看看与信道工厂相关的一些接口和基类的定义。一、信道工厂相关的接口和基类对于信道监听器,WCF定义了两个接口:IChannelListener和IChnnelListener。与之相对地,WCF也为信道工厂定义了两个接口:IChannelFactory和IChannelFactory。这两个接口定义了信道工厂最基本的功能和属性,下面是这两个接口的定义:1: public interface I 阅读全文
posted @ 2013-11-15 11:33 郑文亮 阅读(666) 评论(0) 推荐(0) 编辑
摘要: 项目有用到wcf 大体是jquery + webservice + wcf(网页是客户端,wcf是服务端),现在需要服务端往客户端推送信息,本来是用客户端ajax访问 2秒一次访问服务端,后来觉得这办法不是长久之计,所以百度了下,决定使用comet。什么是comet?点击这里!大概就是:客户端发送个ajax请求,服务端接收到这个请求后保存这个请求,直到服务端有信息要返回给客户端或超时(超时时间自己设置,我在例子里设置30秒,不要太久,因为wcf配置也有连接的时间限制),收到信息或超时时限到了时候再重新发起一个ajax请求。wcf的服务契约:IService: 1 [ServiceContrac 阅读全文
posted @ 2013-11-15 09:00 郑文亮 阅读(1498) 评论(0) 推荐(1) 编辑
摘要: 背景客户端与服务端使用WCF建立连接后:1、可能长时间不对话(调用服务操作);2、客户端的网络不稳定。为服务端与客户端两边都写“心跳检测”代码?不愿意。解决设置inactivityTimeout属性:设置KeepAlive值,以保持数据层连接设置ReceiveTimeout 属性:服务端允许客户端登录后不做任何应用层服务的调用也可以一直挂着而不回收连接ReceiveTimeout = TimeSpan.MaxValue参考做socket保持长连接的一些心得及回复意见 How to set keep alive interval for HTTP connection in WCF 阅读全文
posted @ 2013-11-15 08:57 郑文亮 阅读(5758) 评论(1) 推荐(0) 编辑