Това се случва, защото Async
методи в MySql.Data
конекторите всъщност не са асинхронни. Те блокират при мрежов вход/изход и се връщат само когато DB операцията приключи. (За много по-подробно описание вижте този въпрос и неговият най-добър отговор
.) Бъг в MySQL #70111
съобщава за този проблем в MySQL конектора.
За да получите наистина асинхронни DB операции, ще трябва да изчакате, докато тази грешка бъде коригирана, или да преминете към друг конектор.
Разработих нов, напълно асинхронен конектор (MySqlConnector на NuGet
; източник на GitHub
). Той поддържа MySqlDataAdapter
от версия 0.33.0
.