最近遇到這樣的問題:用WCF通信對數(shù)據(jù)庫操作出一次錯后,執(zhí)行其他操作使始終報錯:"通信對象 System.ServiceModel.Channels.ServiceChannel 無法用于通信,因為其處于“出錯”狀態(tài)。"查些資料都是用下列方式直接終止通信的 if (State == CommunicationState.Faulted) { this.Abort(); }請問各位大蝦如果想繼續(xù)保持通信不中斷能夠繼續(xù)執(zhí)行其他操作該怎么做?
1 回答

小怪獸愛吃肉
TA貢獻1852條經(jīng)驗 獲得超1個贊
WCF推薦使用PerCall的實例管理方式,每調(diào)用一個方法都創(chuàng)建一個新的Channel,這樣前一個Channel壞了不至于影響到以后的調(diào)用,保持通信不中斷的方式只有一個,就是別出錯,而如果你的操作會出錯,那么中斷的通信是不可能恢復(fù)到以前的狀態(tài)的.
簡單來說,你根做的是,重新new一個Channel出來調(diào)用后續(xù)的方法
- 1 回答
- 0 關(guān)注
- 604 瀏覽
添加回答
舉報
0/150
提交
取消