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属性是为了防止重复连接

33博客

C#非常简单的SQL异步查询_第1张图片

你可能感兴趣的:(C#非常简单的SQL异步查询)