我有一个WPF应用程序,当用户单击按钮时,我正在进行一些数据库操作。使用GalaSoft的MVVM Light中的RelayCommand将按钮单击绑定到命令。
由于数据量很大,MySQL正在给我超时,但真正的问题是另一个问题。我正在异步执行所有操作,然而,应用程序阻塞,直到超时结束。
我总是希望UI在异步操作运行时保持响应。例如,如果我使用HttpClient
执行GET请求,无论返回响应需要多长时间,我仍然可以使用UI。
我正在使用MySQL的Pomelo数据提供程序(Pomelo.Data.MySql)。
答案 0 :(得分:1)
看起来像是ExecuteReaderAsync()
uses the blocking implementation and wraps it in a TaskCompletionSource
的Pomelo实现。