Настройка CommandTimeout в блоке приложения доступа к данным Microsoft (SQLHelper)
Я использую блок доступа к данным (SQLHelper) для выполнения SQL в базе данных. У меня есть один запрос, который занимает больше времени, чем тайм-аут команды по умолчанию 30 секунд. Я хочу увеличить время ожидания, но не вижу способа сделать это, не взломав блок приложения. Есть ли способ изменить CommandTimeout без изменения класса SQLHelper?
3 ответа
SQLHelper заменен на "База данных" в более новых версиях DAAB . Затем вы можете использовать DbCommand.SetCommandTimeOut - см. Здесь
Ну, я также не смог найти ответ, поэтому я скопировал SQLHelper.cd из DAAB в свой проект и начал использовать его. (Это просто в файле, так что это было легко)
Теперь я могу изменить время ожидания соединения в SQLHelper.cs.
Я понятия не имею, почему это не настраивается в DAAB
Manjesh
Если вы по-прежнему используете старую версию DAAB, существует множество перегрузок FillDataset, для которых в качестве параметра задано время ожидания команды.
public static void FillDataset(string connectionString, CommandType commandType, int commandTimeout, string commandText, DataSet dataSet, string[] tableNames)
public static void FillDataset(string connectionString, CommandType commandType, int commandTimeout, string commandText, DataSet dataSet, string[] tableNames, params SqlParameter[] commandParameters)
public static void FillDataset(string connectionString, string spName, int commandTimeout, DataSet dataSet, string[] tableNames, params object[] parameterValues)
public static void FillDataset(SqlConnection connection, CommandType commandType, int commandTimeout, string commandText, DataSet dataSet, string[] tableNames)
public static void FillDataset(SqlConnection connection, CommandType commandType, int commandTimeout, string commandText, DataSet dataSet, string[] tableNames, params SqlParameter[] commandParameters)
public static void FillDataset(SqlConnection connection, string spName, int commandTimeout, DataSet dataSet, string[] tableNames, params object[] parameterValues)
public static void FillDataset(SqlTransaction transaction, CommandType commandType, int commandTimeout, string commandText, DataSet dataSet, string[] tableNames)
public static void FillDataset(SqlTransaction transaction, CommandType commandType, int commandTimeout, string commandText, DataSet dataSet, string[] tableNames, params SqlParameter[] commandParameters)
public static void FillDataset(SqlTransaction transaction, string spName, int commandTimeout, DataSet dataSet, string[] tableNames, params object[] parameterValues)