C#.net中的超时异常

Bha*_*van 4 c# c#-4.0

 public DataTable GetDailycardReport(DailyReportPL dailyreportpl)
    {
        DataTable dtGetDailycardReport = new DataTable();
        try
        {
            SqlParameter[] arParams = new SqlParameter[2];

            arParams[0] = new SqlParameter("@farmername", typeof(string));
            arParams[0].Value = dailyreportpl.farmername;

            arParams[1] = new SqlParameter("@batchno", typeof(int));
            arParams[1].Value = dailyreportpl.batchno;

            dtGetDailycardReport.Load(SqlHelper.ExecuteReader(connection.ConnectionString, CommandType.StoredProcedure, "k_DailyCardreport", arParams));
        }
        catch (Exception ex)
        {

            //DBExceptionPublisher exc = new DBExceptionPublisher();
            //exc.Publish(ex);
        }
        finally
        {

        }
        return dtGetDailycardReport;

    }
Run Code Online (Sandbox Code Playgroud)

例外::

"Timeout expired.  The timeout period elapsed prior to completion of 
    the operation or  the   server is not responding."
Run Code Online (Sandbox Code Playgroud)

当我将参数传递给存储过程时,它捕获了异常并显示上面的消息" webconfig.如何在文件中将命令超时增加到200. 我在谷歌搜索但没有优化结果.

pro*_*tor 7

您也可以在命令对象上设置它

   cmd.CommandTimeout = 60;
Run Code Online (Sandbox Code Playgroud)

以秒为单位指定时间.

  • @BobbyDigital*在完成操作之前经过的超时时间*在技术上可能是一个`CommandTimeout`问题. (2认同)

Pet*_*sen 6

它可以在connectionstring中设置,如下所示,它设置为200秒.

"Data Source =(local); Initial Catalog = AdventureWorks; Integrated Security = SSPI; Connection Timeout = 200 "

资源