解决SoapHttpClientProtocol连接问题

|| 在生产服务器上使用SOAP客户端时出现超时:
System.Net.WebException: The request timed out
  at System.Net.HttpWebRequest.GetRequestStream () [0x00000] in <filename unknown>:0 
  at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (System.String method_name, System.Object[] parameters) [0x00000] in <filename unknown>:0 
尝试从该计算机ping另一个端点时,它可以正常工作,即使远程登录到端口80也可以,因此,这不是连接问题(我认为)。 相同的代码可以在另一台计算机上正常工作,只是生产过程中遇到此问题。任何想法如何解决此问题?     
已邀请:
您可以启用网络跟踪,将跟踪日志附加到问题将很有帮助。     
好的,终于解决了这个问题,并在16个不间断的小时之后,这就是我的想法。它很奇怪,令人费解和怪异,因此值得在此发表后代文章: 步骤1: 创建一个Web项目,该项目引用一个类库,该类库引用了npgsql.dll(后者又引用了Mono.Security.dll)。在Web项目中添加Web服务引用,并在某些页面中使用它。 SOAP客户端现在可以正常工作 第2步:(这花了10个小时才能隔离) 在引用的类库中添加Class1.cs,并使该类使用npgsql.dll中的类,然后在您的Web项目中使用该类,但要使用从未使用过代码的地方。 SOAP客户端现在因超时而崩溃 在16小时的大部分时间内,从未调用过的代码如何改变SOAP客户端的行为? 回答 当从npgsql.dll引用一个类时(即使从未调用该代码),npgsl.dll和Mono.Security.dll也被复制到bin文件夹中。 由于某种未知原因,Mono.Security.dll阻止了SOAP客户端进行未经认证的连接。 只需从bin文件夹中删除Mono.Security.dll,即可立即解决此问题。 我不知道为什么需要Mono.Security.dll,或者它使SOAP变得混乱,或者我怎么能从bin文件夹中删除它并使一切正常运行。 好吧,这就是我在很短的时间内见过的最奇怪的错误的故事。     

要回复问题请先登录注册