.net - 错误 175 : The specified data store provider cannot be found

标签 .net mysql visual-studio-2010 entity-framework dataprovider

我将 VS2010 与 MySQL .NET Connector 一起使用.我曾经工作的项目开始报告:

Error 175: The specified data store provider cannot be found, or is not valid.

我不知道为什么,尽管在 MS 推荐 VS 修补程序后事情变得很奇怪。

果然,如果我向项目添加测试 ADO.NET 实体数据模型,当我选择“从数据库生成”时,生成 .edmx 文件的实体数据模型向导不会显示数据提供者。更糟糕的是,右键单击并尝试在现有的 .edmx 文件上执行“从数据库更新模型...”会使 VS2010 陷入只能使用任务管理器终止的对话框的死亡螺旋。

这是我的修复方法:关闭 VS2010。完全卸载 MySQL 连接器。重启。完全安装 MySQL 连接器。重启。重启 VS2010。

突然之间,我的数据提供者出现了。我可以编译我的代码。以及添加测试 .edmx 文件。该向导查看我的 MySQL 数据库,通过测试连接,并使用我的关系表构建对象模型。我可以随心所欲地清理/重建。

在我运行该应用程序之前,一切都很好。我的“修复”不成功。

此时会抛出一个异常,指出连接对象正在返回 null,如果我在没有更改代码的情况下重新编译,我会再次收到错误 175 错误。起泡、冲洗、重复。

一些 experiments based off of this StackOverflow answer ,显示连接字符串有效,并使用 MySqlConnection 对象,我可以访问数据库并在这种状态下滚动我自己的工作查询

问题似乎是数据存储提供者不知何故迷路或被踩到,这影响了通过 EntityFrameworks 做事的能力。

我正在寻找一些关于在哪里寻找这些存储的建议,如果有人遇到过类似的东西,如果有任何有用的建议或想法,你认为我可以尝试。

更新 -- 虽然这个花絮没有解决我的问题,它确实使 VS2010 更稳定:卸载 .NET 连接器后,我立即在控制面板的安装了程序,发现还安装了一个较旧的 .NET 连接器。我从控制面板卸载了那个,重新启动,然后安装了新的。 VS2010 现在会记住使用 EntityFrameworks 的数据库提供程序。显然,我安装了一个较新的 MySQL 连接器,以为它会卸载旧的,但它们却相互干扰。

现在我在 System.Data.Entity.dll 中得到了一个 System.ArgumentException,说明了稍微不同的消息:

The specified store provider cannot be found in the configuration, or is not valid. System.ArgumentException: Unable to find the requested .Net Framework Data Provider. It may not be installed.

这发生在 System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName) 方法中。

REVISION NOTE -- 上面删除的原因是 VS2010 最终确实再次丢失了设置。但我能够从控制面板卸载 .Net 连接器并再次重新安装连接器,而无需重新启动,并让我的数据提供程序再次回到环境中。这部分问题感觉更像是 VS2010 错误,而不是 .NET 连接器问题。

最佳答案

我在重新安装 Windows 后遇到了同样的错误,忘记添加 SQlite 的提供程序。
它是 here ,虽然没提,但是完全支持VS 2010。

关于.net - 错误 175 : The specified data store provider cannot be found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4444742/

相关文章:

.net - 第一次从代码访问windows文件夹

c# - Windows 窗体中的数据注释支持

python - SQLalchemy云sql上的mysql url连接字符串

php - MYSQL 类似但不等于

mysql - 如何在nodejs中进行动态的mysql查询次数?

c++ - 在 Opencv 中找不到带有函数的标识符,如何解决?

c# - 在 C#.NET 中使用正则表达式从字符串中提取数据

c++ - stream seekg() 实现从 VS2012 到 2010 各不相同

visual-studio-2010 - Visual Studio Ctrl K + D(代码格式化)不起作用

.net - 更改 sitecore 中页面的位置