最新编辑
该错误已得到修复。
克里斯的评论:
2015-11-07 现在您无需编辑任何内容即可使其全部正常工作
文件或做奇怪的事情。使用适用于 Windows 的 MySQL 安装程序并
包括 Visual Studio 支持和最新的 Connector.Net。是
安装后请务必更新,您将获得每个版本的最新版本
(1.2.5 和 6.9.8)。使用NuGet安装EntityFramework、MySql.Data、
和 MySql.Data.Entity。最后,构建并享受代码优先逆向
通过添加 Ado.Net 实体模型来实现工程优点。
原答案
我发现这是 MySQL 的一个错误。
Here's解释解决方法的链接。
在安装了 VS 2013 的计算机上,VS 插件 (1.1.3 GA) 和
连接器/网络
在执行这些步骤之前关闭所有 VS 实例。
在 Windows 资源管理器窗口中,转到此路径或您安装的任何位置
你连接器/网络二进制文件
C:\Program Files (x86)\MySQL\MySQL 连接器网络
6.8.3\程序集\v4.5\
复制文件:
MySql.Data.Entity.EF6.dll
并将其粘贴到此文件夹中
C:\Program Files (x86)\Microsoft Visual Studio
12.0\Common7\IDE\PrivateAssemblies
如果它要求您覆盖它,请这样做。
您需要管理员权限才能覆盖该文件。
然后您可以再次尝试为您的模型生成脚本。
重要的是你有 1.1.3 版本的 VS 插件
安装,因为这个解决方法就是为了这个。
不幸的是它对我不起作用,所以我降级到实体框架 5,直到他们解决这个问题。
EDIT
最后,现在可以了。
我必须添加以下 3 个 DLL:
- C:\Program Files (x86)\MySQL\MySQL 连接器网络
6.8.3\程序集\v4.5\MySql.Data.dll
- C:\Program Files (x86)\MySQL\MySQL Connector Net 6.8.3\Assemblies\v4.5\MySql.Data.Entity.EF6.dll
- C:\Program Files (x86)\MySQL\MySQL 连接器网络
6.8.3\程序集\v4.5\MySql.Web.dll
然后我将 Web 配置中的 EntityFramework 部分更改为:
<entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
</providers>
</entityFramework>
别忘了REBUILD您应该能够使用 MySQL 创建实体框架 6 模型。
重要的
确保您已经安装了 Visual Studio 的 MySQL1.1.3和 MySQL 连接器 .net6.8.3