entity framework使用错误的连接提供程序

我试图使用entity framework5(代码优先)的ASP.NET Web窗体应用程序,我以前有一个使用MySQL连接运行的基本实现,我也成功使用SQL Server Compact 4的桌面应用程序。

我遇到的问题是,使用EF5我收到错误

在配置中找不到指定的商店提供商,或者无效。

这是非常小的帮助。

升级到EF6-rc1给了我更有用的错误

具有不变名称“MySql.Data.MySqlClient”的ADO.NET提供程序未在计算机或应用程序配置文件中注册,或者无法加载。 有关详细信息,请参阅内部exception

至少我现在知道“问题”是什么。

我遇到的问题是我从项目中删除了所有MySQL的痕迹,没有理由为什么项目应该尝试加载MySQL提供程序。

          

    

这些是我的web.config文件的摘录,如果有任何其他相关部分可能指向解决方案,请告诉我。

我已经在解决方案中对MySQL这个词进行了文本搜索,并且没有对MySQL的引用。 我已经从源代码控制中检查了项目的干净版本,以确保在清除项目构建文件时我没有错过任何文件。

任何人都可以提供任何线索,我应该在哪里确定为什么EF坚持加载MySQL提供商?

问候,安东尼

* 编辑:*只是添加在第一次访问数据库上下文时抛出exception,从堆栈跟踪中初始化数据库时抛出exception。 我也注意到一些非常奇怪的东西; 正确创建数据库文件,似乎EF然后拒绝使用它并尝试使用MySQL。

问题很古老,但可能会对某些人有所帮助。

从Oracle到MS SQL Server的转换我遇到了同样的问题。 最终,代码迁移似乎是问题的根本原因。 切换到另一个数据库提供程序后,您不能将它们保留为原样。 因此,您必须为新数据库提供程序重新进行迁移。

我有一个不同分辨率的相同问题,所以我会继续在这里发布给下一个搜索的人。

我列出了我的连接字符串,可以在部分的Web配置中找到它。 它似乎是在读取连接字符串,而不是providerName

在我意识到我不必要地把它放在部分之前,我看了很久。

当我将放回的根目录时,Entity Framework再次开始使用正确的提供程序。