async sqlConnection异常

时间:2013-03-09 17:29:50

标签: c# sql asynchronous async-await

我正在尝试将异步连接写入我的SQL服务器,但是我遇到了异常的问题。 MSDN对此并不是很有帮助。 我的第一个方法是:

async Task dbConnAsync(SqlConnection conn)
    {
        try
        {
            await conn.OpenAsync(); //Here i get InvalidOperationException
        }
        catch (Exception ex)
        {
            MessageBoxResult result = System.Windows.MessageBox.Show(ex.Message);
        }
    }


    private async void ReadDB()
    {
            try
            {
                Task theTask = dbConnAsync(conn);
                await theTask;                  
            }.....
    }

第二个:

private async void dbConnection()
    {
            try
            {
                 await conn.OpenAsync();               
            }.....
    }

经过多次尝试后,我决定咨询专家,所以当程序无法连接到服务器时,如何捕获异常。

1 个答案:

答案 0 :(得分:0)

该异常告诉您连接已在打开过程中。可能您之前没有等待它完成就致电conn.OpenAsync。可能你错过了await

所以修复不是为了捕获异常而是为了消除根本原因。捕捉只是治疗症状。