EntityFramework6连接MySql数据库 乱码问题

看了 逆水寒龙

使用EntityFramework6连接MySql数据库(db first方式)

自己刚好要用到Entity Framewrok6 连接Mysql,所以也操作了一遍,发现还是有一些问题。

准备工具应该用VS2013、 mysql-for-visualstudio-1.2.3.msi、 mysql-connector-net-6.9.8.msi

程序包管理器执行命令:

Install-Package EntityFramework
Install-Package MySql.Data.Entity.EF6
Install-Package MySql.Data.Entity -Version 6.9.8

 mysql-connector-net-6.9.8.msi 要和 Install-Package MySql.Data.Entity -Version 6.9.8 这个对应才不会有闪退问题。

还有一个乱码问题

QQ截图20160317141957.jpg

QQ截图20160317142302.jpg

如上图:在Name列,由Entity Framework 插入的数据,在Entity Framework 没有乱码,

            但是,在heidisql,Navicat for MySQL,等Mysql管理工具中会出现乱码。

 

解决方法 :在Entity Framework 连接字符串中指定编辑格式为charset=utf8;

              在heidisql,Navicat for MySQL,等Mysql管理工具也使用utf8编码格式(heidisql 默认是gbk,Navicat for MySQL默认是utf8)

    <add name="test2Entities" connectionString="metadata=res://*/test2.csdl|res://*/test2.ssdl|res://*/test2.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=localhost;user id=root;password=kfoekofkekkk;database=test2;charset=utf8;&quot;" providerName="System.Data.EntityClient" />

而且:数据库,数据库的表(每个字段)在设计的时候也要用utf8编码

QQ截图20160317155442.jpg6359382709181626326015288.jpg

 

posted @ 2016-03-17 17:36  cppwen  阅读(710)  评论(0编辑  收藏  举报