程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> WCF分布式開發常見錯誤解決(10)

WCF分布式開發常見錯誤解決(10)

編輯:關於.NET

WCF分布式開發常見錯誤解決(10):套接字連接中斷,The socket connection was aborted

(使用Windows Service作為宿主的時候也會出現這樣的情況,搜索的) 我們這裡是自定義托管宿主,在進行WCF編程開發過程時,使用NetTcpBinding綁定協議,作為通訊協議,可能會引發這樣的異常,導致數據如法傳輸。套接字連接中斷,可能是由於消息處理錯誤,或者遠程宿主接受超時引起,或者是底層網絡資源問題導致,本地套接字時間是'00:00:59.7656250'。具體信息如下:

The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was '00:00:59.7656250'.

此問題的的解決辦法:

我查詢了很多資料,國外論壇也有人已經遇到這樣的問題。

1.http://social.msdn.microsoft.com/forums/en-US/wcf/thread/637e6097-9161-40ee-8578-46388b7647cd

2.http://social.msdn.microsoft.com/forums/en-US/wcf/thread/06cb1522-31f0-4ce3-85f0-02656228a8e1/

這個是兩個MSDN上討論的解決辦法,更換其他的綁定協議確實可以解決問題。

參考代碼如下:

WSHttpBinding binding = new WSHttpBinding();
binding.ReceiveTimeout = new TimeSpan(10, 10, 10);

我測試的結果使用basicHttpBinding協議也可以,不會出現這樣的異常。

如果大家有好的經驗,也歡迎補充。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved