Wygląda na to, że spóźniłem się 2 lata z odpowiedzią na ten post, ale może to być pomocne dla tych, którzy wciąż borykają się z tym problemem, więc oto moje odkrycie z dnia 1 kwietnia 2012 r. o godzinie 17:00 czasu wschodniego:
Miałem ten sam problem z jedną z moich aplikacji internetowych. I stwierdziłem, że wspomniany problem pojawia się, gdy to zrobisz:
- Skopiuj i wklej plik
MySql.Data.dll
gdzieś w folderze. - Masz kopię dowolnej wersji
MySql.Data.dll
w GAC
Chociaż aplikacja działa dobrze na twoim komputerze deweloperskim, ponieważ widzi pliki, ale po wdrożeniu jej na innej maszynie w rzeczywistości powoduje błąd wykonania.
W moim przypadku VS2008 zawsze wskazywał mi ten sam błąd, o którym wspomniałeś. Następnie zrobiłem to:
- Usunięto odniesienie do lokalnej kopii biblioteki dll
- Odwołuje się do biblioteki DLL znalezionej w GAC
- I ustaw właściwość "Kopiuj lokalnie" na "Prawda" biblioteki DLL, klikając prawym przyciskiem myszy->właściwości.
Edytuj:
Ktoś zapytał „Gdzie jest GAC?”:
http://msdn.microsoft.com/en-us/library/yf1d93sz(v=vs.110).aspx