J'ai résolu votre même erreur en ajoutant simplement le jeu de caractères à la chaîne de connexion :
Server=myServer;Port=3306;Database=myDB15;User ID=usr33;Password=usr33P;CharSet=utf8;
Dans mon cas, j'utilise MySql Connector pour .Net version 6.9.3. pour se connecter à 30 bases de données égales avec la même structure, le même classement (utf8_unicode_ci ) et différents contenus de table.
Quand j'ai exécuté MySqlCommand.ExecuteReader() méthode pour sélectionner le contenu de utilisateur table, dans certaines bases de données (4 sur 30) a obtenu la même erreur La clé donnée n'était pas présente dans le dictionnaire .