3

データベースに対して SQL を実行するために、データ アクセス アプリケーション ブロック (SQLHelper) を使用しています。デフォルトのコマンド タイムアウトである 30 秒よりも時間がかかるクエリが 1 つあります。タイムアウトを増やしたいのですが、アプリケーション ブロックをクラックしない限りそれを行う方法がわかりません。SQLHelper クラスを変更せずに CommandTimeout を変更する方法はありますか?

4

3 に答える 3

3

私も答えを見つけることができなかったので、私がしたことは、SQLHelper.cdをDAABからプロジェクトにコピーして、それを使い始めたことです。(ファイルにあるだけなので簡単でした)

これで、SQLHelper.cs で接続タイムアウトを変更できるようになりました。

これが DAAB で構成できない理由がわかりません

マンジェッシュ

于 2011-05-19T17:19:43.080 に答える
2

DAABの新しいバージョンでは、SQLHelperは「データベース」に置き換えられています。その後、DbCommand.SetCommandTimeOut を使用できます -ここを参照してください

于 2012-01-17T06:46:23.190 に答える
0

古いバージョンの 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)
于 2014-02-11T22:41:11.837 に答える