我正在使用 Visual Studio 2015 并创建了一个 Mvc 应用程序,我希望将其连接到 MySql 数据库。我能够连接到 Mysql,并且我的测试连接成功。但是,一旦我尝试使用 Entity Framework ,我就会收到下面的错误消息。
我尝试了很多在网上找到的东西,但没有运气。我究竟做错了什么?任何文档都会有帮助
最佳答案
我猜你需要安装mysql Entity Framework 库才能通过EF连接db
从nuget安装mysql Entity Framework
Install-Package EntityFramework
Install-Package MySql.Data.Entity -Version 6.10.4
如果您使用的网络应用程序需要安装
Install-Package MySql.Web -Version 6.10.4
在某些情况下,您还需要在 webconfig 中进行更多更改
将提供商更新为
<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" />
</providers>
在连接字符串中需要将提供程序更改为
providerName="MySql.Data.MySqlClient"
在某些情况下,如果您遇到“System.Data.StrongTypingException:表中列“IsPrimaryKey”的值”等异常。所以您需要按照下面给出的步骤进行操作
- 打开服务 (services.msc) 并重新启动 MySQL57 服务。
- 在 MySQL 中执行以下命令。 使用<>; 设置全局optimizer_switch='衍生_merge=OFF';
- 更新 .edmx。
关于mysql - 使用Entityframework从Mvc应用程序连接到Mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47565815/