2014-09-02 4 views
0

Я использую Entity Framework 6.1 с MySQL Server 5.5.35 и EF Powertools (последняя версия). Я могу запустить и использовать фреймворк и зарегистрировать все правильные данные поставщика в файле конфигурации приложения.Entity Framework Powertools Создание представлений с помощью Mysql и EF6

Где я с проблемой является то, что я не могу использовать правую кнопка мыши функции электроинструмента Сформировать просмотры, он продолжает бросать вверх это исключение:

System.Reflection.TargetInvocationException: Исключение было брошено в мишени призывание. ---> System.Data.Entity.Core.MetadataException: Указанная схема недействительна. Ошибки: Model1.edmx (7,8): ошибка 0152: Поставщик ADO.NET не найден провайдер Entity Framework с инвариантным именем «MySql.Data.MySqlClient». Убедитесь, что провайдер зарегистрирован в разделе «entityFramework» файла конфигурации приложения.

Я понимаю, что спрашивает, потому что я боролся с этой проблемой при запуске моего проекта изначально, но хотя он отлично работает при запуске и компиляции функции generate views, эта ошибка возникает. Я могу только предположить, что Power Tools ищет поставщиков в другом месте, а не в моем файле конфигурации приложения, поскольку они зарегистрированы.

Есть ли у кого-нибудь идеи о том, где он может получить список поставщиков, возможно, из глобального системного файла конфигурации? Я на самом деле не испытываю этого, и после того, как поиски в течение нескольких часов придумали ничего.

Любая помощь будет оценена или указана в правильном направлении. Спасибо

+0

визуальная студия немного лаконична о том, где она ищет. файлы конфигурации. Вы перестроили свой проект, чтобы убедиться, что у вас нет старых файлов .config для визуальной студии? – Claies

ответ

0

Прежде всего, попробуйте использовать нижнюю версию Entity Framework. Когда я использовал MySql, EF6 не поддерживал Mysql в это время. По-видимому, теперь доступно 6.0, если у вас есть разъем 6.8.x, но я все еще не уверен в 6.1. Вы можете увидеть здесь: информация о EF6.0 connector

Несколько причины могут приводит к тому: Вы уверены, что иметь раздел, как это в вашем App.config или Web.config:

<entityFramework> 
    <providers> 
     <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity" /> 
     </providers> 
</entityFramework> 

Я также должен был добавить следующий код, когда я работал с MySql, не знаю, почему, потому что мне не нужно, когда я работаю с SQL Server ...

+0

Последняя версия драйвера MySQL .NET (6.8.3) [рекламируется Oracle как поддерживающая Entity Framework 6] (http://dev.mysql.com/doc/relnotes/connector-net/en/connector-net -News-6-8-3.html). –

+0

говорит, что Entity Framework 6.0, а не 6.1, так что это может быть проблема ... –

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