Не удалось загрузить файл или сборку 'MySql .Data.EntityFramework, версия = 8.0.19.0 или одна из ее зависимостей. - PullRequest
3 голосов
/ 15 января 2020

Я только что установил последнюю версию MySQL.Data.EntityFramework Version 8.0.19.

При первом запуске кода я получил следующую ошибку:

Последний пакет nuget (MySql .Data 8.0.19) содержит неподписанную версию Ubiety.Dns. .Core.dll. Это приводит к исключению при загрузке.

в соответствии с: этот отчет об ошибке , мне нужно установить: Ubiety.Dns.Core / package .. Я установил этот пакет. Теперь я получаю следующее исключение:

Не удалось загрузить файл или сборку 'MySql .Data.EntityFramework, Версия = 8.0.19.0, Культура = нейтральная, PublicKeyToken = c5687fc88969c44d' или одна из ее зависимости.


В качестве обходного пути я попытался установить предыдущую версию MySQL.Data.EntityFramework Version 8.0.18, но не могу найти предыдущую версию: MySql .Data.EntityFramework Nuget .

Кто-нибудь знает, были ли удалены предыдущие версии?

Ответы [ 6 ]

5 голосов
/ 19 февраля 2020

Для тех, кто не хочет тысячи избыточных предупреждений, которые по какой-то причине появляются с Ubiety.Dns.Core - установка более ранней версии для меня работала нормально:

Install-Package Ubiety.Dns.Core -Version 2.4.1
2 голосов
/ 31 января 2020

В настоящее время я прибегаю к использованию 8.0.18, пока не будет выпущено исправление, поскольку установка Ubiety.Dns.Core в моих проектах приводит к тысячам предупреждений по всему исходному коду.

Install-Package MySql.Data -version 8.0.18
2 голосов
/ 23 января 2020

Ух, удивительно, у меня точно такая же проблема. Что я сделал, чтобы решить:

  • Обновите все проекты до 8.0.19 mysql провайдера.
  • Повторно добавьте тег db provider в мой web.config. Я случайно удалил это. Это была моя вина.
  • Наконец, я установил Ubiety.Dns.Core.

Выполнение всего этого решило мои проблемы.

2 голосов
/ 16 января 2020

Обновление:

MySQL.Data 8.0.19 зависит от Ubiety.Dns.Core , который не устанавливается автоматически. Вам необходимо установить Ubiety.Dns.Core отдельно после установки MySQL.Data 8.0.19

Также обратите внимание, что Oracle удалил все предыдущие версии MySQL.Data 8.0.19, , см. Здесь , поэтому, если вы обновляетесь до 8.0.19, вы не можете go вернуться к 8.0.18 ... Я считаю, что причина удаления всех предыдущих версий заключается в том, что у них была ошибка с подключением к нескольким хостам строка, которая была исправлена ​​в 8.0.19.


Оригинальный ответ:

В моем случае причиной получения ошибки было то, что я забыл обновить все проекты в мое решение MySQL.Data 8.0.19 и некоторые из них все еще были на 8.0.18.

1 голос
/ 15 января 2020

проверьте ваш Web.Config, если у вас есть эти строки.

     <system.data>
    <DbProviderFactories>
      <remove invariant="MySql.Data.MySqlClient" />
      <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data,      Version=8.0.19.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    </DbProviderFactories>
  </system.data>

, а также добавлен провайдер:

<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version=8.0.19.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d">
0 голосов
/ 05 мая 2020

для меня удаление следующей части кода было исправлением

    <system.data>
        <DbProviderFactories>
           <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=8.0.19.0, Culture=neutral, PublicKeyToken=xxxx" />
        </DbProviderFactories>
    </system.data>
...