【发布时间】:2011-07-07 22:01:09
【问题描述】:
有人知道这是什么意思吗?
System.Net.WebException: 底层连接已关闭:一个 发送时发生意外错误。 ---> System.IO.IOException:握手失败由于意外 数据包格式。在 System.Net.Security.SslState.StartReadFrame(字节[] 缓冲区,Int32 读取字节, AsyncProtocolRequest asyncRequest) 在 System.Net.Security.SslState.StartReceiveBlob(字节 [] 缓冲区,AsyncProtocolRequest 异步请求)在 System.Net.Security.SslState.CheckCompletionBeforeNextReceive(协议令牌 消息,AsyncProtocolRequest 异步请求)在 System.Net.Security.SslState.StartSendBlob(字节 [] 传入,Int32 计数, AsyncProtocolRequest asyncRequest) 在 System.Net.Security.SslState.ForceAuthentication(布尔值 接收第一,字节[]缓冲区, AsyncProtocolRequest asyncRequest) 在 System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult 懒惰的结果)在 System.Net.TlsStream.CallProcessAuthentication(对象 州)在 System.Threading.ExecutionContext.runTryCode(对象 用户数据)在 System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode 代码,CleanupCode backoutCode,对象 用户数据)在 System.Threading.ExecutionContext.RunInternal(ExecutionContext 执行上下文,上下文回调 回调,对象状态)在 System.Threading.ExecutionContext.Run(ExecutionContext 执行上下文,上下文回调 回调,对象状态)在 System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult 结果)在 System.Net.TlsStream.Write(字节[] 缓冲区,Int32 偏移量,Int32 大小)在 System.Net.PooledStream.Write(字节[] 缓冲区,Int32 偏移量,Int32 大小)在 System.Net.ConnectStream.WriteHeaders(布尔值 async) --- 内部异常结束 堆栈跟踪 --- 在 System.Net.HttpWebRequest.GetResponse() 在 System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(时间跨度 超时)在
编辑:
这是我调用的方法:
_productsService = new ProductsPortTypeClient(); _productsService.GetResortProducts(GetProductsCredentials(), GetResortProductParams());
【问题讨论】:
-
遇到异常时你在做什么?也许您可以发布完整的堆栈跟踪?
-
只是一个常规的网络服务 - 见编辑
-
此 Web 服务是否配置为 NTLM/Kerberoes 身份验证?
-
也许服务定义已更改,您需要刷新对它的引用?
-
如果您在 uri 中混合了 http 和 https,则可能会出现此问题。这是一个容易犯(和修复)的错误!