提供程序未返回ProviderManifestToken字符串错误

har*_*har 17 mysql entity-framework asp.net-mvc-3 dbcontext

我正在尝试使用ASP.Net MVC3,实体框架和MySQL创建一个Web应用程序.

我已将以下代码添加到我的Web.Config文件中.

<connectionStrings>
    <add name="ContactContext" connectionString="server=localhost;database=contacts;uid=root;pwd=password;" providerName="MySql.Data.MySqlClient"/>

  </connectionStrings>
Run Code Online (Sandbox Code Playgroud)

我还在项目"Contact_Me"中创建了"Person"Model,"ContactContext".当我尝试创建一个包含Person Model和Contact上下文的"ContactController"时,它会给我以下错误

"无法检索"Connect_Me.Models.Persons"的元数据.提供程序未返回ProviderManifestToken字符串"

MYSQ和MVC3 SQL连接错误\ ProviderManifestToken但我使用MySQL,这是我最接近的问题.但答案并没有解决我的问题.

提前致谢

小智 22

我知道这对于你们几个人来说可能是非常基本的,但是在EF无法找到要使用的连接字符串的情况下也会抛出此异常.如果您在多层应用程序中工作,请确保将连接字符串添加到客户端应用程序,而不是包含数据访问代码的类库.只需2美分.


小智 10

当我的sql server实际关闭时,我收到此错误.因此,请确保您的SQL Server已启动并正在运行.


Tim*_*oke 5

如果在使用MySql.Data.Entity(最新版本为6.10.X MySql.Data(最新版本为8.0.X)的 EntityFramework 项目中升级 Nuget 引用,也可能会出现此错误。这些版本号应该匹配。您应该使用MySql.Data.EntityFramework与包MySql.Data8.0版本后,和MySql.Data.Entity包6.10和之前的版本。

这篇博文中有更多细节:https : //davidsekar.com/asp-net/mysql-error-the-provider-did-not-return-a-providermanifesttoken


har*_*har 3

问题出在 MySQL 连接器/网络上。

我以前使用过 MySQL 连接器/Net 6.3.5,在卸载它并安装 MySQL 连接器/Net 6.5.4 后,问题得到解决。您可以在http://www.mysql.com/products/connector/找到最新的连接器