我已经浪费了将近一个月的时间来尝试解决此问题,但没有运气。我想我已经尽力在论坛上找到了一切。 因此,目前我要做的就是将我的asp.net Web表单连接到本地数据库,并能够使用asp.net身份。
我正在使用Visual Studio Community 2017(版本15.9.3),并下载了最新的MySQL Workbench 8.0(版本8.0.13),还下载了最新的MySql.Data.dll(版本8.0.11.0)。
因此,我可以确定在我的项目中我没有创建其他新的asp.net Web应用程序(.net框架)。我已经选择了Web表单并将“身份验证”更改为“个人用户帐户”。
在Web配置中,我更改了以下内容:
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="DefaultConnection" connectionString="server=localhost;User Id=root;password=****;database=testdb" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.8.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
</providers>
</entityFramework>
在mysql工作台中,我创建了一个名为testdb的新模式。
运行项目时出现此错误
System.InvalidOperationException:'实体框架提供程序类型'MySql.Data.MySqlClient.MySqlProviderServices,MySql.Data.Entity.EF6,Version = 6.8.3.0,Culture = neutral,PublicKeyToken = c5687fc88969c44d注册在应用程序配置文件中无法加载具有不变名称'MySql.Data.MySqlClient'的ADO.NET提供程序。确保使用了程序集限定名称,并且该程序集可用于正在运行的应用程序。有关更多信息,请参见http://go.microsoft.com/fwlink/?LinkId=260882。
我已经按照该链接给出了错误提示,但是我不确定它告诉我的是什么,我知道有人会告诉我给我答案,但是我花了很多时间阅读它,我不知道现在它在告诉我什么。我不是要别人给我,而是我确实需要一些帮助。
编辑:
谢谢Bradley和SH7使得网站开始时没有出现错误,现在我不确定是否需要在这里开始一个新问题,但是当我单击Register并输入我的电子邮件和密码时,它给了我错误。
System.Data.Entity.Core.EntityCommandExecutionException: 'An error occurred while executing the command definition. See the inner exception for details.'
MySqlException: Table 'testdb.aspnetusers' doesn't exist
是的,我知道这意味着该表不存在,但是给我的印象是,当您首次注册用户时,它将创建Identity所需的所有表。在等待帮助时,我将添加一个新表。表格,看看我是否可以连接到该表格。