EntityFramework 6 Alpha 2 и MySQL Connector / NET 6.6.4

entity-framework entity-framework-6 mysql mysql-connector

Вопрос

6.6.4. Интерфейс MySQL .NET, по-видимому, поддерживает EF6. Я обновился с EF5 и .NET 4 до EF6 alpha2 и .NET 4.5. Я обновил ADO.NET Entity Data Model с момента обновления.

Поступая в базу данных, он выдает сообщение об исключении;

ItemModel.ssdl (2,2): ошибка 0152: поставщик провайдера Entity Framework не найден для провайдера ADO.NET 'MySql.Data.MySqlClient'. Убедитесь, что провайдер зарегистрирован в разделе «entityFramework» файла конфигурации приложения. Дополнительную информацию см. На странице http://go.microsoft.com/fwlink/?LinkId=260882 .

В настоящее время мой файл app.config содержит;

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
<entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
</entityFramework>
<connectionStrings>
    <add name="ItemEntities" connectionString="metadata=res://*/ItemModel.csdl|res://*/ItemModel.ssdl|res://*/ItemModel.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=localhost;user id=user;password=password;persist security info=True;database=Item_dbo&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>

Есть ли элемент конфигурации, который я законно отсутствую в моем app.config, или я просто использую версию соединителя MySQL и EF alpha, которые просто несовместимы друг с другом?

Мое намерение заключается в том, чтобы запустить этот режим под моно 3.0.3, когда это оказалось успешным в Windows.

Популярные ответы

просто добавьте это в свой 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=6.6.4.0" />
    </DbProviderFactories>
  </system.data>

  <entityFramework>
    <providers>
      <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.6.4.0" >
      </provider>
    </providers>
  </entityFramework>

но я не думаю, что вы можете использовать 6.6.4 с EF6 ...



Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему