我已经通过stackoverflow搜索但找不到答案。不知道能不能把这个问题说清楚。反正我不是说英语的人=.=
我正在使用 c# 和 Visual Studio 2010 进行开发。我正在制作一个供用户登录的表单,我希望这个表单在加载事件期间测试 sql server 连接。
看起来很简单,代码是:
private void testDBconnection()
{
label3.Text = "Connecting to Database Server......";
SqlServerConnection ssc = new SqlServerConnection();
bool conOK = ssc.isConnectable(ssc.makeConnectionString(
SqlServerConnParamters.SqlServerIPAddress,
SqlServerConnParamters.AccountValidationDatabaseName,
SqlServerConnParamters.SqlServerUserName,
SqlServerConnParamters.SqlServerPassword,
5));
if (conOK)
{
label3.Text = "";
}
else
{
label3.Text = "Database connection failed";
button1.Enabled = false;
}
}
我把这个方法放在 Form_Load 事件中。
但是在运行时,这个过程甚至在这个表单显示之前就开始了。默认情况下,验证可能持续 15 秒(我将其设置为 5,但也需要时间)。如果连接有问题,它会显示为程序无法打开,但它会在连接数据库失败后显示。
我的意图是通过 Label3 显示“连接到数据库服务器......”告诉用户,并告诉用户连接是否失败。
我试图找到像“Loaded_Complete”或“Loaded”这样的表单事件(虽然我找到了 Form_Closed),但我找不到。
我想这与线程、程序睡眠或其他有关。我希望有人能在这方面帮助我。非常感谢你们!