解決調用WebService報基礎連接已經關閉: 服務器關閉了本應保持活動狀態的連接的錯誤的方法


問題可能原因之一:網速的快慢,我經過測試,如果外網訪問的話網速慢就是出現此類問題,但是我沒有精確測出當在網絡流量最低在什么情況下可以避免此類問題

問題可能之二:程序發布之前沒把原引用的web service地址去掉再編譯發布。

問題可能之三:檢查自已的源代碼

問題可能之四:用SQL2000要升級到SP4

解決:
首先將引用該WebServices的程序在IDE中打開;
然后在“解決方案資源管理器”中展開“web reference”——“webservices 名”——“Reference.map”——“

Reference.cs(.vb)”;
cs文件中添加如下代碼:

using System.Net;

protected override WebRequest GetWebRequest( Uri uri)
 ...{
      HttpWebRequest  webRequest = ( HttpWebRequest)base.GetWebRequest(uri);
      webRequest.KeepAlive = false;
      webRequest.ProtocolVersion = HttpVersion.Version10; 
      return webRequest;


vb文件中添加如下代碼:

Imports System.NET

Protected Overrides Function GetWebRequest()Function GetWebRequest(ByVal url As Uri) As WebRequest
            Dim webrequest As HttpWebRequest = MyBase.GetWebRequest(url)
            webrequest.KeepAlive = False
            Return webrequest
End Function


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM