WCF 双工通信
--------------------编程问答-------------------- 1.服务器 上的代码怎么接受winform事件的注册这个可以在服务端定义一个全局的字典保存通道信息,key为客户端的标识,value为通道信息,每次注册,将通道信息保存到字典中。
2.服务器向客户端推送消息
这个就可以遍历那个集合,向客户端发消息。
3.客户端关闭怎么取消这些事件
主动取消事件本质是向服务端发消息,服务端判断之后将该客户端的通道信息从全局字典中移除,具体可以再客户端关闭时closing事件中实现。被动取消,比如断线,可以通过心跳机制实现
整个流程就是服务端开启--客户端发消息给服务端注册--服务端接受之后管理信息--当服务端有信息时随时可以发送到客户端
我以前写的例子可以参考下,资源地址http://download.csdn.net/download/pfe_nova/4225744 --------------------编程问答-------------------- http://download.csdn.net/detail/caozhy/5287998 --------------------编程问答-------------------- @pfe_Nova --------------------编程问答--------------------
嗯,我写了closing事件的,可是客户端关闭好久才能出发,这个时候,回调函数早就出错了,两外你说的那个Key Value,在程序运行过程中还能获取么?还有当客户端调用服务是,自动形成实例前,我不能给他加事件啊?貌似构造函数也无法 加参数哦,哎被人小白一个,按您说的,我改了下
--------------------编程问答--------------------
public UpDate()
{
Temper = StartUpService.TR;
Temper.EventTempHum += new TempHumHandler(GetTempHumChanges);
t = new Thread(new ThreadStart(Counting));
t.IsBackground = true;
t.Start();
}
public void Counting()
{
while(true)
{
if(i-- < 0)
{
Channel_Closing(new object(), EventArgs.Empty);
}
Thread.Sleep(1000);
}
}
恩恩,刚下载了,请多多指教 --------------------编程问答-------------------- 学习了好一段时间,终于入门了。
补充:.NET技术 , C#