Eax*_*Eax 21 c# mysql asp.net-mvc entity-framework
我试图通过C#.NET Web MVC应用程序连接到MySQL.
我的问题是,当我尝试添加一个ADO.NET实体数据模型,从数据库中生成的,根据我的MySQL连接,我收到以下错误信息:
您的项目引用了最新版本的Entity Framework; 但是,无法为您的数据连接找到与此版本兼容的Entity Framework数据库提供程序.在执行此操作之前,请退出此向导,安装兼容的提供程序并重建项目
我正在运行以下软件,升级和附件:
NuGet包:
我的web.config,entityFramework块:
..
</system.webServer>
<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
</providers>
</entityFramework>
<runtime>
..
Run Code Online (Sandbox Code Playgroud)
我已经看过了所有其他解决方案,我可以在这里找到在SO和一般通过谷歌,尝试了所有的人,并没有任何的解决方案似乎已经奏效或已经非常不同的版本连接器/ NET或其他所需的程序的.
谁能发现我做错了什么?
小智 23
我遇到过同样的问题.安装后:
我不想重新安装Visual Studio,所以经过一些测试,我发现文件夹" C:\ Program Files(x86)\ Microsoft Visual Studio 12.0\Common7\IDE\PrivateAssemblies "包含以下文件的旧版本:
关闭Visual Studio后,我将这些文件替换为" C:\ Program Files(x86)\ MySQL\MySQL Connector Net 6.9.5\Assemblies\v4.5 "中的文件,现在它可以工作了!
注意:在上面的子文件夹名称中替换6.9.5,并在系统中安装实际版本.
Ste*_*vic 18
这对我有用,无需重新安装Visual Studio或任何其他任何东西.
<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
Run Code Online (Sandbox Code Playgroud)
注意:确保仅删除entityFramework标记及其子标记,并将其替换为上面的剪切标记.如果删除任何"额外"标签,您的项目可能会遇到更大的问题,就像我一样.X)
基本解决方案是重新安装MySQL和VisualStudio,包括 Entity和.NET.
出于某种原因,我不确定为什么,安装过程会破坏DLL,或者至少那是我和其他同事的经历.我们的解决方案一直尝试以上所有方面都无济于事.所以最后我们尝试重新安装,并且它有效.所以尝试:)
| 归档时间: |
|
| 查看次数: |
26698 次 |
| 最近记录: |