模版程序是 http://www.cnblogs.com/jillzhang/archive/2008/02/24/1079339.html
WCF 的 事件广播 改写的 聊天室 ;
用户 下线 抛出 异常 ,因为 没写 下线 事件
- C# code
void Server_OnAdd(object sender, CallbackEventArg e){ try { if (e != null && e.Job != null) { callBack.OnAdd(e.Job); } } catch (Exception ex) { Console.WriteLine(ex.Message); }}
请 大家 写在 源程序 给我 改改 ,谢谢 大家!
------解决方案--------------------
简单看了下代码
的确没有下线代码,问题是模版程序模板程序使用这个:
public static event ServerEventHanlder OnStatusChanged
遍历客户端进行回调.
按模板那种写法很难做到在客户端下线时从ServerEventHanlder 中移除对应委托.
建议你该写模板使用一个Dictionary存储每个客户端的CallBack
http://blog.csdn.net/lhzyn/archive/2008/04/01/2234496.aspx