ASP.NET和MySQL .Net Framework数据提供程序问题

SiH*_*Lee 4 mysql asp.net

我是ASP.NET的新手.每次我尝试运行我的应用程序时,都会遇到下面的错误消息.我已经多次为MySQL安装.Net Framework Data Provider.我希望有人可以帮助我.提前致谢.

Server Error in '/PLDT QuickSearcher' Application.

Unable to find the requested .Net Framework Data Provider.  It may not be installed.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.ArgumentException: Unable to find the requested .Net Framework Data Provider.  It may not be installed.
Run Code Online (Sandbox Code Playgroud)

Fil*_*lip 18

添加MySql.Data.dll作为项目的引用
将此块添加到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" />
    </DbProviderFactories>
</system.data> 
Run Code Online (Sandbox Code Playgroud)


sky*_*dev 10

引用MySql.Data和MySql.Entities Nuget包.然后将此行添加到您的Web配置中.

<system.data>
  <DbProviderFactories>
    <remove invariant="MySql.Data.MySqlClient" />
    <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.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
  </DbProviderFactories>
</system.data>
Run Code Online (Sandbox Code Playgroud)

您的连接字符串应类似于以下内容:

<add name="MyDb" connectionString="Server=127.0.0.1;Port=3306;Database=MyDb;Uid=root;Pwd=;" providerName="MySql.Data.MySqlClient" />
Run Code Online (Sandbox Code Playgroud)

  • 确保您正在编写正确版本的程序集.目前6.6.4.0 (2认同)