現在、当社の古いアプリケーションで OleDb を使用しています。
アプリケーションのプロファイリングを開始したところ、dotTrace から、このコードがボトルネックの 1 つであることがわかりました。合計で、実行に約 18 秒かかります (平均 6 ミリ秒)。
m_DataSet = new DataSet("CommandExecutionResult");
m_DataAdapter.SelectCommand = m_OleDbCommand;
m_DataAdapter.Fill(m_DataSet, "QueryResult"); // <-- bottleneck
ReturnValue = m_DataSet.Tables[0].Copy();
m_InsertedRecordId = -1;
m_EffectedRecords = m_DataSet.Tables[0].Rows.Count;
クエリの数を減らす方法がいくつかあるかもしれません。しかし、DataAdapter を使用せずにアクセス データベースから DataTable を取得する方法はありますか?