首页 新闻 搜索 专区 学院

关于WCF通信错误处理

0
[已解决问题] 解决于 2009-04-19 00:06

最近遇到这样的问题:

用WCF通信对数据库操作出一次错后,执行其他操作使始终报错:

"通信对象 System.ServiceModel.Channels.ServiceChannel 无法用于通信,因为其处于“出错”状态。"

查些资料都是用下列方式直接终止通信的

            if (State == CommunicationState.Faulted)
            {
                this.Abort();
            }

请问各位大虾如果想继续保持通信不中断能够继续执行其他操作该怎么做?

masterfy的主页 masterfy | 初学一级 | 园豆:105
提问于:2009-02-25 16:33
< >
分享
最佳答案
0

WCF推荐使用PerCall的实例管理方式,每调用一个方法都创建一个新的Channel,这样前一个Channel坏了不至于影响到以后的调用,保持通信不中断的方式只有一个,就是别出错,而如果你的操作会出错,那么中断的通信是不可能恢复到以前的状态的.

简单来说,你根做的是,重新new一个Channel出来调用后续的方法

Gray Zhang | 专家六级 |园豆:17610 | 2009-02-25 16:55
其他回答(1)
0

mark...

Jared.Nie | 园豆:1940 (小虾三级) | 2009-02-26 09:21
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册