当前位置: 首页 > 面试题库 >

MySQL Entity Framework错误-在配置中找不到指定的存储提供程序,或者该存储提供程序无效

黄沈浪
2023-03-14
问题内容

我已经用C#编写了一个程序集,以执行MySQL数据库的所有数据访问。我已经在C#winform桌面应用程序中成功使用了程序集(已编译的dll)。但它仅适用于已安装“
MySQL Connector Net 6.4.4”的PC。

我试图在asp.net网站项目中使用相同的程序集。首先,我收到有关缺少连接字符串的错误。通过将MySQL连接字符串添加到web.config文件中,可以轻松解决此问题。我现在收到此错误(下面列出了堆栈跟踪信息),我尝试将以下dll添加到我的bin文件夹中以解决此问题,但是它没有用。

MySql.Data.dll
MySql.Data.Entity.dll
MySql.Web.dll

System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. 
---> 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. at System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName) at System.Data.EntityClient.EntityConnection.GetFactory(String providerString) 
--- End of inner exception stack trace

问题答案:

但它仅适用于已安装“ MySQL Connector Net 6.4.4”的PC。

这是否意味着您正在尝试在未安装提供程序的计算机上运行代码?在这种情况下,您还必须在配置文件中注册该提供程序,因为安装会将其添加到machine.config中,如果未安装,则该提供程序当前未注册。

尝试将其添加到您的web.config文件中:

<system.data>
  <DbProviderFactories>
    <add name="MySQL Data Provider" 
         invariant="MySql.Data.MySqlClient" 
         description=".Net Framework Data Provider for MySQL"  
         type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
  </DbProviderFactories>
</system.data>


 类似资料:
  • 问题内容: 我正在尝试将Entity Framework与MySQL配合使用,但出现上述错误。我安装了最新的MySQL连接器。 完整错误为: 但是,我找不到任何建议说明您如何在“ entityFramework”部分中进行注册的内容。 其他一些帖子(例如)建议将提供程序添加到该 部分中,如下所示: 但这不起作用,因为它声称名称是重复的。而且,如果我实际上遍历了,我可以看到最后一个是MySQL提供程

  • 如何使用从辅助外部存储器提供文件? 的当前实现只处理 看来,没有办法定义一个

  • 我最近升级/更新了一个旧项目中的实体框架,从版本4或5到版本6。现在我得到了这个例外: EntityFramework.dll中出现“System.InvalidOperationException”类型的异常,但未在用户代码中处理 其他信息:未找到具有固定名称“System.Data.SqlClient”得ADO.NET提供程序得实体框架提供程序.确保在应用程序配置文件的“Entity Fram

  • 问题内容: 有人可以向我解释差异吗? Provisioner-在docker中安装,运行,拉出容器中的一项工作。 提供程序-是运行VM的东西。即VBox运行ubuntu OS映像。 Docker如何成为提供者?它直接运行一些docker镜像吗?如果我在Windows上,必须有一些boot2docker的隐藏用法,对不对?我什么时候使用每个? 问题答案: Docker Provisioner帮助准备

  • 我的问题是,这个“提供商app”是一个什么样的app?是否有任何Android API,该应用程序应该实现,以作为配置提供商?此配套应用程序如何将配置更改挂钩到中,以便托管应用程序能够检索这些更改? 我在这里问这个问题,因为不幸的是,我在Android文档中没有找到任何引用。

  • 在nuget下载EF6并尝试运行我的项目后,它返回以下错误: 找不到具有固定名称“System.Data.SqlClient”得ADO.NET提供程序得实体框架提供程序.确保在应用程序配置文件的“Entity Framework”部分中注册了提供程序。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=260882。