从服务器接收结果时发生传输级错误。 (提供者:会话提供者,错误:19)

时间:2016-08-17 15:15:40

标签: c# asp.net .net sql-server asp.net-mvc

我在使用Visual Studio 2013和本地IIS 8进行调试时遇到此错误。我使用的是Entity Framework,而且数据库不是本地的,它位于运行SQL的远程Windows Server 2012上Server 2012

  

从服务器接收结果时发生传输级错误。 (提供者:会话提供者,错误:19 - 物理连接不可用)

奇怪的是,当您尝试正常加载网站时,当我使用Visual Studio进行调试(调试本地非远程代码)并使用远程测试数据库时,这不会发生服务器。我收到此错误

它执行第一个查询并获取结果,当它执行另一个查询时发生错误。我已经搜索了几个小时,尝试了我能找到的所有东西,但没有任何工作。另一件奇怪的事情是它在一周前工作正常!我没有在这个项目上工作一个星期,当我离开时它正在工作,我回来了,这开始发生了。我一直在通过服务器查看任何更改,没有什么不同。我之前从未遇到过这个错误,它刚刚开始发生而没有对代码进行任何更改。相同的代码在服务器上运行正常,只有当我在我的机器上使用Visual Studio或IIS 8时才会发生此错误

这是堆栈跟踪:

  

[SqlException(0x80131904):从服务器接收结果时发生传输级错误。 (提供者:会话提供者,错误:19 - 物理连接不可用)]
  System.Data.SqlClient.SqlConnection.OnError(SqlException异常,Boolean breakConnection,Action1 wrapCloseInAction)+3278660
  System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj,Boolean callerHasConnectionLock,Boolean asyncClose)+791
  System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj,UInt32错误)+697
  System.Data.SqlClient.TdsParserStateObject.ReadSniSyncOverAsync()+224
  System.Data.SqlClient.TdsParserStateObject.TryReadNetworkPacket()+126
  System.Data.SqlClient.TdsParserStateObject.TryPrepareBuffer()+101
  System.Data.SqlClient.TdsParserStateObject.TryReadByte(Byte& value)+46
  System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior,SqlCommand cmdHandler,SqlDataReader dataStream,BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj,Boolean& dataReady)+658
  System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()+92
  System.Data.SqlClient.SqlDataReader.get_MetaData()+ 0102   System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,RunBehavior runBehavior,String resetOptionsString)+552
  System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior,RunBehavior runBehavior,Boolean returnStream,Boolean async,Int32 timeout,Task& task,Boolean asyncWrite,SqlDataReader ds,Boolean describeParameterEncryptionRequest)+3114
  System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior,RunBehavior runBehavior,Boolean returnStream,String方法,TaskCompletionSource`1完成,Int32超时,任务和任务,布尔asyncWrite)+554
  System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior,RunBehavior runBehavior,Boolean returnStream,String method)+98
  System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior,String method)+307
  System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand,CommandBehavior behavior)+474

     

[EntityCommandExecutionException:执行命令定义时发生错误。有关详细信息,请参阅内部异常。]
  System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand,CommandBehavior behavior)+667
  System.Data.Objects.Internal.ObjectQueryExecutionPlan.Execute(ObjectContext context,ObjectParameterCollection parameterValues)+932
  System.Data.Objects.ObjectQuery 1.GetResults(Nullable 1 forMergeOption)+213
  System.Data.Objects.ObjectQuery 1.System.Collections.Generic.IEnumerable<T>.GetEnumerator() +41
System.Linq.Enumerable.FirstOrDefault(IEnumerable
1 source)+127
  lambda_method(Closure,ControllerBase,Object [])+352
  System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext,IDictionary 2 parameters) +266
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary
2个参数)+35
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass42.b__41()+33
  System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)+58
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass39.b__33()+80
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass4f.b__49()+386
  System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult)+58
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass2a.b__20()+32
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass25.b__22(IAsyncResult asyncResult)+185
  System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult)+48
  System.Web.Mvc。&lt;&gt; c__DisplayClass1d.b__18(IAsyncResult asyncResult)+27
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass4.b__3(IAsyncResult ar)+22
  System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)+63
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass4.b__3(IAsyncResult ar)+22
  System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult)+48
  System.Web.Mvc。&lt;&gt; c__DisplayClass8.b__3(IAsyncResult asyncResult)+42
  System.Web.Mvc.Async。&lt;&gt; c__DisplayClass4.b__3(IAsyncResult ar)+22
  System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult)+48
  System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+399
  System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean&amp; completedSynchronously)+137

非常感谢任何帮助,提前谢谢

编辑只是详细说明我尝试过的内容:

  • 重启VS
  • 重新启动本地和远程IIS
  • 重新启动Windows Server
  • 重新启动SQL Server
  • 在LINQPad中检查查询(可以正常工作)
  • 删除edmx模型并从头开始重新创建

0 个答案:

没有答案