TableAdapter にタイムアウトを設定する方法
xsd ファイルから作成した TableAdapter は、タイムアウトを設定するためのプロパティが公開されていません。そのため、 TableAdapter にタイムアウトを設定するには、 partial クラスを作成してタイムアウトを取得・設定するプロパティを作成します。
// Sample.xsd を作成した場合、 // それに付随する Sample.cs に // 以下のようなコードを作成します。 namespace 既定の名前空間.SampleTableAdapters { // クラス名称は、作成した TableAdapter にあわせてください public partial class QueriesTableAdapter { public int CommandTimeout { get { return CommandCollection[0].CommandTimeout; } set { for (int i = 0; i < this.CommandCollection.Length; ++i) { if (CommandCollection[i] != null) { ((System.Data.SqlClient.SqlCommand) (this.CommandCollection[i])).CommandTimeout = value; } } } } } }
タイムアウトを設定するには、以下のようなコードを記述します。
SampleTableAdapters.QueriesTableAdapter adapter = new SampleTableAdapters.QueriesTableAdapter(); // タイムアウトを 30 分に設定 adapter.CommandTimeout = 30 * 60;