2016-08-11 2 views
0

У меня есть приложение WinForms /. Net 4.0 в Visual Studio 2015 Update 3. Когда я пытаюсь добавить или редактировать, TableAdapter в любом из моих DataSets, я получаю эту ошибку:Конфликтующие версии MySql.Data.dll в проекте .Net, не позволяющие мне добавлять/редактировать TableAdapters в моих наборах данных

The wizard detected the following problems when configuring the TableAdapter:

Details:

Generated SELECT statement. [A]MySQL.Data.MySqlClient.MySqlConnection cannot be cast to [B]MySQL.Data.MySqlClient.MySqlConnection. Type A originates from 'MySQL.Data Version 6.9.8.0, Culture=neutral,PublicToken=c5687fc88969c44d' in context 'Default' at location 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\MySQL.Data.dll'. Type B originates from 'MySQL.Data, Version 6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' in context 'Default' at location 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\MySQL.Data\v4.0_6.9.9.0_c5687fc88969c44d\MySQL.Data.dll'.

Очевидно, что жалуется на две различные версии MySQL.Data.dll 6.9.8 и 6.9.9. Однако я не понимаю, почему и где он ссылается на версию 6.9.8.0? Если я смотрю ссылки на мой проект, он использует MySQL.Data.dll версии 6.9.9.0. Это пакет NuGet на месте:

C: \ Users \ Fabs-LenovoY70 \ Source \ Workspaces \ Tracker \ Tracker \ пакеты \ MySql.Data.6.9.9 \ Lib \ net45 \ MySql.Data.dll

Я пробовал решение по телефону [A]MySql.Data.MySqlClient.MySqlConnection cannot be cast to [B]MySql.Data.MySqlClient.MySqlConnection, но не работал.

Я искал все мое решение для любых ссылок на 6.9.8, и ничего не нашел. Я уже давно работаю над Google для решения проблемы и не нашел ничего, что сработало. :(Любые идеи кто-нибудь? Спасибо ...

ответ

5

У меня такие же проблемы с VS 2012. Я не уверен, как это исправить, но потратив довольно много времени на это, вот что я вижу .

  1. Над всей вашей/моей системы в mysql.data.dll версии 6.9.9.0. Я не в состоянии понизить это 6.9.8.0 Когда я создаю другие проблемы версии с mysql.data. dll, которые, кажется, невосприимчивы с моим уровнем знаний.

  2. Я преследовал все версии DLL версии 6.9.8.0 и удалил их, гарантируя, что на его месте была версия 6.9.9. Onc e Я сделал это, я не могу добавить подключение к данным в базу данных MySQL. Когда я пытаюсь получить ошибку Произошла ошибка, которая обычно вызвана не установкой Visual Studio. Кроме того, не работают ранее определенные соединения данных.

  3. Не имея установленного MYSQL-коннектора-net-6.9.9, выдается сообщение об ошибке «Не удается получить фабрику поставщика для поставщика данных с именем MySql.Data.MySqlClient», и вы даже не доходите до ошибки, описанной выше, с помощью ОП.

    1. Я пробовал различные версии соединительной сети, и это не устраняет проблему.

У меня нет никаких ссылок на 6.9.8.0 ни в одном из моих проектов, но очевидно, по какой-то причине VS нуждается в нем для создания подключения к данным.

Update:

Я удалил MySQL, затем прошел и удалил все MYSQL * .dll и все конфигурационные файлы. Затем я использовал MySQL Installer 5.7.14, найденный по адресу http://dev.mysql.com/downloads/installer/

Установщик все еще установил mysql.data.dll версию 6.9.8.0 и по-прежнему вызывает ошибку.

Обновление: Проблема с MySQL Connector/Net. Он использует версию 6.9.9.0 из DLL, а все остальное использует 6.9.8.0. Перейдите в установочный файл вашего сообщества и удалите соединитель/сеть.Затем перейдите к https://downloads.mysql.com/archives/c-net/ и получите версию 6.9.8 соединителя/сети. Установите это, и все должно быть хорошо. Он работал над моей системой.

+0

Создан отчет об ошибке с MySQL. Его можно найти по адресу http://bugs.mysql.com/bug.php?id=82617&thanks=2¬ify=3 – BrownPony

+0

Спасибо за ответ BrownPony! Это помогло мне преодолеть ошибку соединения с MySQL DB. Я бы хотел, чтобы этот ответ был принят как «правильный». –

+0

Да, удаление 6.9.9 и установка 6.9.8 работали для меня – user1900799

1

Удаление 6.9.9 и установка 6.9.8 работали для меня. У меня были проблемы с деинсталляцией, и я должен был использовать этот инструмент от microsoft для устранения проблемы установки/удаления соединителя. https://support.microsoft.com/en-us/help/17588/fix-problems-that-block-programs-from-being-installed-or-removed Наконец-то мне пришлось убедиться, что ссылка на mysql.data.dll - это версия 6.9.8. Я думаю, это единственное решение, потратив бесчисленные часы вверх и вниз.

+0

Да, удалив 6.9.9 и установив 6.9.8, тоже работал для меня – user1900799

Смежные вопросы