C#非常简单的SQL异步查询

下面是我连接数据库的按钮事件

private async void btnLogin_Click(object sender, EventArgs e)
{
    btnLogin.Text = "连接中";
    btnLogin.Enabled = false;
    //创建连接字符串
    if (cbType.SelectedIndex == 0)
    {
        SQLHelper.Create(txtName.Text);
    }
    else
    {
        SQLHelper.Create(txtName.Text, txtAdmin.Text, txtPwd.Text);
    }
    await Task.Run(() =>
    {
        try
        {
            d = SQLHelper.GetDataBase();
            MessageBox.Show("连接成功");
            this.Close();//关闭窗体
        }
        catch (Exception)
        {
            MessageBox.Show("连接失败");
        }
    });
    btnLogin.Text = "登录";
    btnLogin.Enabled = true;
}

前面我说到过异步,通过async关键字实现异步操作,还要加上await,要不然这依然是一个同步事件,await后接Task.Run(),意思就是等待这个里面的委托执行完毕之后才会执行下面的代码,但是这个是异步操作,不影响UI,在这个里面可以加上你们连接数据库的代码,还可以放你需要的异步操作。设置按钮的Enabled属性是为了防止重复连接

求支持我的网站C#非常简单的SQL异步查询 http://www.494v.com/forum.php?mod=viewthread&tid=251&fromuid=1 (出处: 五秒论坛)

猜你喜欢

转载自blog.csdn.net/qq_38613453/article/details/82726966