2017-07-04 4 views
0

Ich habe eine WPF-Anwendung, wo ich einige Datenbankvorgänge ausführen, wenn ein Benutzer auf eine Schaltfläche klickt. Der Knopfklick ist an einen Befehl gebunden, der den RelayCommand von GalaSoft MVVM Light verwendet.ADO.NET-Blockierung trotz asynchroner Aufrufe

MySQL gibt mir Timeouts wegen der großen Datenmenge, aber das eigentliche Problem ist ein anderes. Ich mache alles asynchron, und dennoch blockiert die Anwendung bis zum Ablauf der Zeitüberschreitung.

enter image description here

Ich erwarte, dass immer die Benutzeroberfläche ansprechbar bleiben, während ein asynchroner Vorgang ausgeführt wird. Zum Beispiel, wenn ich eine GET-Anfrage mit HttpClient mache, egal wie lange es dauert, um mit einer Antwort zurückzukommen, kann ich immer noch die Benutzeroberfläche verwenden.

Ich verwende den Pomelo-Datenprovider für MySQL (Pomelo.Data.MySql).

Antwort