2013-03-21 53 views
0

,如果客户端断开连接,我希望代码继续处理。现在它跳转到catch语句并停止处理。回调的目的最终将更新客户端的请求进度,但客户端可以在任何阶段断开连接,并且我想要继续处理。在下面的代码(wcf服务器)中回拨继续

public void ChatToServer(string texttoServer) // send some text to the server 
     { 
      Logging.Write_To_Log_File("Entry", MethodBase.GetCurrentMethod().Name, "", "", "", 1); 

      try 
      { 

       Thread.Sleep(5000); 
       IMyContractCallBack callback = OperationContext.Current.GetCallbackChannel<IMyContractCallBack>(); 
       callback.callbacktoServer("Progress is 20% complete"); 
       // Some extremely important processing 
       .... 
       callback.callbacktoServer("Progress is 40% complete"); 
       // Some extremely important processing 
       .... 
       callback.callbacktoServer("Progress is 60% complete"); 
       // Some extremely important processing 
       .... 
       callback.callbacktoServer("Progress is 80% complete");  

       // Some extremely important processing 
       .... 
       callback.callbacktoServer("Progress is 100% complete");         
      } 
      catch (Exception ex) 
      { 

      } 

     } 
+1

你正在C#中进行java编程,你应该使用委托,而不是接口。 – antonijn 2013-03-21 18:07:11

回答

2

如果我正确认识你,你需要做的是从回拨电话陷阱通信错误,而忽略他们 - 你可能会想要把回拨电话在其自己的方法,这样你不不必为每个进度通知站点重复异常处理逻辑。

+0

非常感谢 - 工作 – user1438082 2013-03-21 19:54:43