アップロードされた XML ファイルに基づいて、ユーザーがさまざまなデータベースのテーブルを更新できるようにするツールを作成しようとしています。ユーザーが SQL Server インスタンスを選択し、ログイン資格情報を書き込めるようにする必要があります。資格情報が正しければ、更新するデータベースを選択する必要があります。
私の問題は、提供されたユーザー名とパスワードが間違っている場合、ユーザーは、入力が間違っていることを伝えるためにキャッチする例外を取得するのに2〜3秒待たなければならないことです。
私のコードは次のようになります。
private void comboDatabaseTarget_DropDown(object sender, System.EventArgs e)
{
String connString = "Server=" + this.comboSQLServerInstances.Text + ";User Id=sa;Password=testPasswd;";
try
{
using (SqlConnection sqlConn = new SqlConnection(connString))
{
sqlConn.Open();
DataTable tblDatabases = sqlConn.GetSchema("Databases");
sqlConn.Close();
foreach (System.Data.DataRow row in tblDatabases.Select())
{
this.comboDatabaseTarget.Items.Add(row.ItemArray[0]);
}
}
}
catch (Exception ex)
{
MessageBox.Show("wrong username and password, or bad sql instance");
}
}
私の質問は: データベースに接続しようとしたときにタイムアウトを設定する方法はありますか? ユーザー名とパスワードが正しければ、ほぼ瞬時に回答を受け取ることができるため、100 ミリ秒としましょう。
ありがとうございました!