使用配置更改默认的SqlCommand CommandTimeout而不是重新编译?

rob*_*rtc 6 asp.net iis-6 sql-server-2005 windows-server-2003 .net-3.5

我支持ASP.Net 3.5 Web应用程序,用户在尝试运行报告30秒后遇到超时错误.看看网络似乎很容易改变代码中的超时,遗憾的是我无法访问代码并重新编译.无论如何要为Web应用程序,工作进程,IIS或整个机器配置默认值?

这是堆栈跟踪直到它在System.Data中的位置,以防我错过了一些其他问题:

[SqlException (0x80131904): Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.]
  System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +1948826
  System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +4844747
  System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +194
  System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2392
  System.Data.SqlClient.SqlDataReader.ConsumeMetaData() +33
  System.Data.SqlClient.SqlDataReader.get_MetaData() +83
  System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +297
  System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +954
  System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +162
  System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) +32
  System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) +141
  System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) +12
  System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior) +10
  System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +130
  System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior) +162
  System.Data.Common.DbDataAdapter.Fill(DataTable dataTable) +115
Run Code Online (Sandbox Code Playgroud)

- 编辑

代码本身之外必须有一些东西 - 我已经下载了数据库,并在安装在测试服务器上的同一个网站上运行它,它运行时间超过30秒并返回报告.我在live和test上比较了.Net目录下的machine.config和web.config文件它们看起来是一样的,比较两个IIS设置,还看了一下SQL Server的配置,唯一的区别就是live服务器集群在64位W2K3上,而测试服务器则在32位上.

Dan*_*n F 14

不幸的是,我过去读过的所有内容都说不,不能通过配置来控制.哪个是无聊的.