【发布时间】:2019-05-25 16:05:25
【问题描述】:
我使用 .NET Framework 4.7 和 ASP.NET Web 表单模板和身份验证模式创建了一个 ASP.NET Web 应用程序 (.NET Framework)。个人用户帐户。
我的连接字符串
<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>
错误
System.InvalidOperationException: '实体框架提供程序类型 'MySql.Data.MySqlClient.MySqlProviderServices,MySql.Data.Entity.EF6' 在 ADO.NET 提供程序的应用程序配置文件中注册 无法加载具有不变名称“MySql.Data.MySqlClient”。制作 确保使用程序集限定名称并且程序集是 可用于正在运行的应用程序。看 http://go.microsoft.com/fwlink/?LinkId=260882 了解更多信息。'
在
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", throwIfV1Schema: false)//<-- this line
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
我已经读过那些:
- Exception : The provider did not return a ProviderManifestToken string-Entityframework
- The provider did not return a ProviderManifestToken string
- The provider did not return a ProviderManifestToken string error
- Dynamic MySQL database connection for Entity Framework 6
- https://docs.microsoft.com/en-us/aspnet/identity/overview/extensibility/implementing-a-custom-mysql-aspnet-identity-storage-provider
- https://dev.mysql.com/doc/connectors/en/connector-net-entityframework60.html
当我修复一个错误时,修复后又出现了一个错误,等等,所以我用上面的设置创建了一个新项目,希望有人能帮助我解决这个问题。 (这是我第一次使用 ASP.NET Web 窗体)
【问题讨论】: