• EntityFramework 使用Mysql数据库


    报错如下:

    System.ArgumentException: The specified store provider cannot be found in the configuration, or is not valid. ---> System.ArgumentException: Unable to find the requested .Net Framework Data Provider.  It may not be installed.
       at System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName)
       at System.Data.EntityClient.EntityConnection.GetFactory(String providerString)
       --- End of inner exception stack trace ---
       at System.Data.EntityClient.EntityConnection.GetFactory(String providerString)
       at System.Data.EntityClient.EntityConnection.ChangeConnectionString(String newConnectionString)
       at System.Data.EntityClient.EntityConnection..ctor(String connectionString)

    解决方案如下:

    1、在EF所在项目中增加Mysql.data.dll,MySql.Data.Entity.dll,MySql.Web.dll这三个的引用,并且copy 到本地(在部署的时候这三个文件需要扔到bin目录下)

    2、把mysql.data.dll添加到web.config中,添加方法如下:(版本跟token会根据不同的dll不同,你自己调整)

      <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,
            Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
          </DbProviderFactories>
        </system.data>

    参考资料:http://support.appharbor.com/discussions/problems/2687-solved-mysql-provider-with-entity-framework-problem

  • 相关阅读:
    Object-Oriented Programming Summary Ⅱ
    Object-Oriented Programming Summary Ⅰ
    自己查与写的批量比较bash
    C#可为空引用类型 -0007
    C#类型系统 -0006
    C#类型 -0005
    C# Main方法返回值 -0004
    C# Main方法参数 -0003
    C# Main方法 -0002
    C# Hello World -0001
  • 原文地址:https://www.cnblogs.com/yanyuge/p/2914575.html
Copyright © 2020-2023  润新知