C# 如何修复:提供程序未返回ProviderManifestToken字符串?
我使用.NET Framework 4.7和ASP.NET Web表单模板以及身份验证模式个人用户帐户创建了一个ASP.NET Web应用程序.NET Framework 我的连接字符串 它充满了正确的值,但我不想发布它们。。。 实体框架 错误 System.InvalidOperationException:'实体框架提供程序类型 'MySql.Data.MySqlClient.MySqlProviderServices,MySql.Data.Entity.EF6' 已在ADO.NET提供程序的应用程序配置文件中注册 无法加载具有固定名称“MySql.Data.MySqlClient”的。制作 确保使用了程序集限定名称,并且该程序集是 可用于正在运行的应用程序。看见 了解更多信息。” 在 我已经读过了:C# 如何修复:提供程序未返回ProviderManifestToken字符串?,c#,mysql,asp.net,C#,Mysql,Asp.net,我使用.NET Framework 4.7和ASP.NET Web表单模板以及身份验证模式个人用户帐户创建了一个ASP.NET Web应用程序.NET Framework 我的连接字符串 它充满了正确的值,但我不想发布它们。。。 实体框架 错误 System.InvalidOperationException:'实体框架提供程序类型 'MySql.Data.MySqlClient.MySqlProviderServices,MySql.Data.Entity.EF6' 已在ADO.NET提供
当我修复一个错误时,在修复后出现了另一个错误,而不是另一个错误,依此类推,所以我创建了一个具有上述设置的新项目,我希望有人能帮助我解决这个问题。这是我第一次使用ASP.NET Web表单您似乎在使用MySql.Data.Entity 6.10.7。我猜您也在使用MySql.Data8.0.11 这两个库不兼容。对于v8.x,Oracle将升级到。您需要卸载MySql.Data.Entity并安装MySql.Data.EntityFramework
<add name="DefaultConnection" connectionString="server=mysql server;password=password;port=3306;uid=username;database=schemaname" providerName="MySql.Data.MySqlClient"/>
<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>
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", throwIfV1Schema: false)//<-- this line
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}