0

Я разрабатываю приложение, использующее соединение MySql для Entity Framework 5. Построение решения работает на моей машине.Можно ли скомпилировать без установки MySqlConnector?

Запуск приложения на компьютере без MySQLConnector установлен и работает, потому что я добавил следующее к моему app.config файла:

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

Но другие программисты, которые просто хотят, чтобы скомпилировать и запустить мое решение, получим следующее ошибка в файле .edmx:

Указанный поставщик не найден в конфигурации, либо недействителен.

Возможно ли скомпилировать проект, который использует MySql с EntityFramework 5, но без установленного MySqlConnector?

ответ

1

Я столкнулся с той же проблемой, и я только что нашел решение для этого, если вы не хотите, чтобы установить MySqlConnector везде

Открыть файл EDMX в текстовом режиме и посмотрите раздел конструктора в нем. У вас должно быть свойство ValidateOnBuild равным True. Установите значение false, и при создании не будет отображаться ошибка.

<Designer xmlns="http://schemas.microsoft.com/ado/2009/11/edmx"> 
    [...] 
    <Options> 
     <DesignerInfoPropertySet> 
     <DesignerProperty Name="ValidateOnBuild" Value="False" /> 
     [...] 

Такая же опция доступна в окне свойств при открытии диаграммы.

+0

Perfect! Это то, чего не хватало. –

0

Я думаю, нет Нет. Но, конечно же, я не знаю ... вы можете ждать других ответов.

0

Вы должны иметь MySql.Data.dll и MySql.Data.Entity.dll, доступные на каждой машине, поскольку сборка зависит от них. Они могут быть зарегистрированы в ОС или просто помещены в путь для сборки, чтобы их найти.

См. here относительно вопроса.

+0

Я уже ссылаюсь на эту DLL и добавляет ее в нашу систему управления версиями, но, похоже, этого недостаточно для компиляции файла .edmx. –

+0

Извините, вам также нужно «MySql.Data.Entity.dll» - обновлено. – PinnyM

+0

Такая же проблема: добавление ссылки на MySql.Data.dll и MySql.Data.Entity.dll недостаточно, чтобы иметь возможность создавать решение на компьютере без установленного MySql Connector. –

0

Я нашел ответ:

Другие машины без соединителя MySQL, установленного на самом деле может составить штраф решение, без ошибок.

Однако разработчик edmx автоматически выводит список ошибок с помощью Указанный поставщик магазина не может быть найден в конфигурации или недействителен. ошибка. Но это не ошибка сборки!

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

  • Нет связанных вопросов^_^