当我点击“添加”按钮时,我的数据被添加到数据库中,但是我遇到了
taskceleceledexception
例外文字:
如何解决此异常? 以及我该如何使用计时器?
object
答案 0 :(得分:0)
哇,我想我找到了解决方法!
我只是在方法ReadBase()
的放大上增加了一个延迟。
private async void ReadBase()
{
await Task.Delay(500);
using (sqlConnection = new SqlConnection(connectionString))
{
SqlDataReader dataReader = null;
SqlCommand command = new SqlCommand("SELECT id, name, surname FROM myHumanity", sqlConnection);
try
{
await sqlConnection.OpenAsync();
dataReader = await command.ExecuteReaderAsync();
while (await dataReader.ReadAsync())
{
listbox.Items.Add(Convert.ToString(dataReader["id"]) + " " + Convert.ToString(dataReader["name"]) + " " + Convert.ToString(dataReader["surname"]));
}
}
catch (System.Threading.Tasks.TaskCanceledException ex)
{
MessageBox.Show(ex.Message);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, ex.Source, MessageBoxButton.OK, MessageBoxImage.Error);
}
finally
{
dataReader?.Close();
sqlConnection?.Close();
}
}
}