1

SqlConnection.ConnectionTimeout设置为无限 (0) ,我的桌面应用SqlCommand.CommandTimeout程序将无限期等待。但是,我的 ASP.NET 应用程序不会。没有连接被泄露,并且有足够的系统内存。

我怀疑 ASP.NET 正在秘密设置超时,但即使HttpRuntimeSection.ExecutionTimeout设置为 30 分钟。我仍然遇到超时异常。

ASP.NET 中是否还有其他我不知道的超时变量?或者有人知道是什么原因造成的吗?

更新:堆栈跟踪

at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.SqlClient.SqlConnection.Open()
at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at FrostWebsite._default.GetQuickStats()
at FrostWebsite._default.Page_Load(Object sender, EventArgs e)
at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
4

1 回答 1

1

问题是您有来自 ASP.NET 的超时异常,而不是来自 SQL。有一种方法可以超过 asp.net 超时。此处示例:http ://weblogs.asp.net/aghausman/archive/2009/02/20/prevent-request-timeout-in-asp-net.aspx

于 2013-04-14T13:31:30.437 回答