首页 新闻 会员 周边

关于wcf 的问题

0
悬赏园豆:100 [已关闭问题] 关闭于 2010-09-15 13:47

各位同行大家好,小弟对此异常不解希望给我个提示

 

<E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
<System xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system">
<EventID>131075</EventID>
<Type>3</Type>
<SubType Name="Error">0</SubType>
<Level>2</Level>
<TimeCreated SystemTime="2010-09-14T10:46:15.4322500Z" />
<Source Name="System.ServiceModel" />
<Correlation ActivityID="{72b8adf8-7e58-4193-a64b-8b10d02b75b3}" />
<Execution ProcessName="Football.ConsoleHost" ProcessID="4276" ThreadID="9" />
<Channel />
<Computer>W1</Computer>
</System>
<ApplicationData>
<TraceData>
<DataItem>
<TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Error">
<TraceIdentifier>http://msdn.microsoft.com/zh-CN/library/System.ServiceModel.Diagnostics.ThrowingException.aspx</TraceIdentifier>
<Description>正在引发异常。</Description>
<AppDomain>Football.ConsoleHost.exe</AppDomain>
<Exception>
<ExceptionType>System.ServiceModel.CommunicationException, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
<Message>套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“10675199.02:48:05.4775807”。</Message>
<StackTrace>
在 System.ServiceModel.Channels.SocketConnection.EndRead()
在 System.ServiceModel.Channels.DelegatingConnection.EndRead()
在 System.ServiceModel.Channels.TracingConnection.EndRead()
在 System.ServiceModel.Channels.SessionConnectionReader.OnAsyncReadComplete(Object state)
</StackTrace>
<ExceptionString>System.ServiceModel.CommunicationException: 套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“10675199.02:48:05.4775807”。 ---&gt; System.Net.Sockets.SocketException: 远程主机强迫关闭了一个现有的连接。
   --- 内部异常堆栈跟踪的结尾 ---
   在 System.ServiceModel.Channels.SocketConnection.EndRead()
   在 System.ServiceModel.Channels.DelegatingConnection.EndRead()
   在 System.ServiceModel.Channels.TracingConnection.EndRead()
   在 System.ServiceModel.Channels.SessionConnectionReader.OnAsyncReadComplete(Object state)</ExceptionString>
<InnerException>
<ExceptionType>System.Net.Sockets.SocketException, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
<Message>远程主机强迫关闭了一个现有的连接。</Message>
<StackTrace>
在 System.ServiceModel.Channels.SessionConnectionReader.GetPendingMessage()
在 System.ServiceModel.Channels.SessionConnectionReader.EndReceive()
在 System.ServiceModel.Channels.SynchronizedMessageSource.ReceiveAsyncResult.OnReceiveComplete(Object state)
在 System.ServiceModel.Channels.SessionConnectionReader.OnAsyncReadComplete(Object state)
在 System.ServiceModel.Channels.TracingConnection.TracingConnectionState.ExecuteCallback()
在 System.ServiceModel.Channels.TracingConnection.WaitCallback(Object state)
在 System.ServiceModel.Channels.SocketConnection.FinishRead()
在 System.ServiceModel.Channels.SocketConnection.AsyncReadCallback(Boolean haveResult, Int32 error, Int32 bytesRead)
在 System.ServiceModel.Channels.OverlappedContext.CompleteCallback(UInt32 error, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
在 System.ServiceModel.Diagnostics.Utility.IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)
在 System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
</StackTrace>
<ExceptionString>System.Net.Sockets.SocketException: 远程主机强迫关闭了一个现有的连接。</ExceptionString>
<NativeErrorCode>2746</NativeErrorCode>
</InnerException>
</Exception>
</TraceRecord>
</DataItem>
</TraceData>
</ApplicationData>
</E2ETraceEvent>

问题补充: 这些代码就是 我用Trace Viewser 显示出来的。
金属狂潮的主页 金属狂潮 | 初学一级 | 园豆:100
提问于:2010-09-14 18:59
< >
分享
所有回答(4)
0

洋洋洒洒那么长的code,简要的描述可以更快的让人家理解你的问题.

I,Robot | 园豆:9783 (大侠五级) | 2010-09-14 19:06
0

服务器端出现了异常、调试下服务器端。

HUHU慈悲 | 园豆:9973 (大侠五级) | 2010-09-14 19:17
好我去看看
支持(0) 反对(0) 金属狂潮 | 园豆:100 (初学一级) | 2010-09-14 19:20
0

  连接超时

goodgc | 园豆:205 (菜鸟二级) | 2010-09-14 19:38
0

狼Robot言之有理。

其实核心提示就是一句:
远程主机强迫关闭了一个现有的连接。

从这句看,可能是连接超时所致。

邀月 | 园豆:25475 (高人七级) | 2010-09-14 21:05
我也觉得是这样刚才我一直在监视这端口,没有问题
支持(0) 反对(0) 金属狂潮 | 园豆:100 (初学一级) | 2010-09-14 21:13
_baseBindingReportManager.ReceiveTimeout = new TimeSpan(10, 10, 10); _baseBindingReportManager.SendTimeout = new TimeSpan(10, 10, 10); 加了这个也用
支持(0) 反对(0) 金属狂潮 | 园豆:100 (初学一级) | 2010-09-14 21:14
@金属狂潮:两个思路:第一:写unit测试,调试跟踪;二、直接调试服务器端,HOST(寄主)所在项目中右键->调试->启动新实例,开始调试服务端。在客户端所在项目中右键->调试->启动新实例,开始调试客户端。
支持(0) 反对(0) 邀月 | 园豆:25475 (高人七级) | 2010-09-15 09:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册