我正在尝试将异步连接写入我的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();
}.....
}
经过多次尝试后,我决定咨询专家,所以当程序无法连接到服务器时,如何捕获异常。
答案 0 :(得分:0)
该异常告诉您连接已在打开过程中。可能您之前没有等待它完成就致电conn.OpenAsync
。可能你错过了await
。
所以修复不是为了捕获异常而是为了消除根本原因。捕捉只是治疗症状。