【问题标题】:Entity Framework 6.x issue with MySQL connectorMySQL 连接器的 Entity Framework 6.x 问题
【发布时间】:2016-08-25 02:18:46
【问题描述】:
【问题讨论】:
标签:
mysql
entity-framework
asp.net-web-api
mysql-connector
【解决方案1】:
我在相同的配置下遇到了同样的问题;)
按以下顺序安装 nu-get 数据包:
- EntityFramework 6.1.3 和重建项目
- MySQL.Data 6.9.9
- MySQL.Data.Entity 6.9.9(重要!安装 Oracle 的“Data.Entity”,而不是 MySQL 的“Data.EntitIES”)
- MySQL.WEB 6.9.9
它应该工作;)
【解决方案2】:
请检查您的 web.config。它应该有 mysql 提供者和 mysql db 提供者工厂的条目。像这样的东西(当你从 nuget 安装 MySql.Data.Entity 包时应该自动完成):
...
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</providers>
</entityFramework>
<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.9.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
...