我有一个 Windows 应用程序(C# 应用程序),它从 asp.net Web 服务获取所有数据。它在我的开发 PC 上运行良好,但在其他一些计算机上运行良好。当我在另一台计算机上运行该应用程序时,它会同时打开与 Web 服务的连接,但某些请求未完成。
我观看了来自 Fiddler 和 TCPView 的 Web 服务请求。我认为 Windows 同时阻塞了与同一个 Web 服务地址的连接,但我无法理解真正的问题在哪里?
这是我的 Web 服务引用覆盖;
protected override System.Net.WebRequest GetWebRequest(Uri uri)
{
System.Net.WebRequest wr = base.GetWebRequest(uri);
System.Net.HttpWebRequest wrHttp = wr as System.Net.HttpWebRequest;
if (wrHttp != null)
{
wrHttp.ServicePoint.Expect100Continue = false;
wrHttp.ServicePoint.ConnectionLimit = 200;
wrHttp.ServicePoint.MaxIdleTime = 200;
wrHttp.ServicePoint.SetTcpKeepAlive(false, 200, 200);
wrHttp.ServicePoint.UseNagleAlgorithm = true;
wrHttp.KeepAlive = false;
wrHttp.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)";
}
return wr;
}