SQL Server迁移到Mysql之EF更换数据源

环境:VS2015、SQL Server 2012、EF6

我的项目架构是DB First,更改数据库后,开发环境要做相应的调整

Step1 : 下载并安装下面三个包,对应自己的电脑环境32/64位

Step2 :利用NuGet安装对应的Mysql.Data和Mysql.Data.Entity,如下图,切记注意:Mysql.Data版本要和Mysql-connector版本一样,要不在从数据库更新模型时会闪退

SQL Server迁移到Mysql之EF更换数据源

Step 3: 在你的xx.edmx点击右键,新建连接,如下图

SQL Server迁移到Mysql之EF更换数据源

选择Mysql DataBase,然后点击确认,再下一步,按提示执行就可以DB first,生成model,这个大家都熟悉。

Step 4:Web.config中要加上配置节,如下:

entityFramework 节点下增加:

<providers>      <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>

    </providers>

<system.data>节点下增加:

<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.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

    </DbProviderFactories>

  </system.data>