EF6 使用 和 连接MySql 数据库-闪退和若干问题解决

在visual studio中用EF6连接Mysql数据库,搞了我两天,刚刚搞定,其实很简单就是版本的问题,这里填个坑。

首先,必备插件
1. MySql Connector/NET
2. MySql for Visual Studio
3. Nuget安装EntityFramework
4. Nuget安装Mysql.Data.Entity

其次,有几个注意点

    MySql和EF6与你用的visual studio版本无关
    MySql for Visual Studio 是用于让你的VS能连上MySql数据库,这个版本能包括你的VS就可以了。
    Mysql Connector/NET 才是最关键的,这个与你的MySql的版本相关,版本不要太高,不要太高,不要太高!

最重要的是MySql Connector/NET的版本,我的Mysql是5.6.12,用的Connector/NET是6.3.8,还要注意,表名和表中的字段名不要用中文,中文无法DB first
---------------------
 

Win10 Professional, Visual Studio 2019 Community
Mysql Connector Net 6.9.12 , MySQL for Visual Studio 12.8 ==> OK

NuGet Mysql.Data.Entity 6.9.12,Mysql.Data 6.9.12

反正就是尽力统一所有MySql 的版本号

 

---------------------------

自动生成的 app.config 里面 connectionString 使用了 System.Data.SqlClient ==修改为 ==》 System.Data.EntigyClient

如果改成 MySql.Data.MySqlClient 还是会报错 System.ArgumentException: 'Keyword not supported. Arg_ParamName_Name'

----------

C# 连接 mySQL 出现 GUID 应包含带 4 个短划线的 32 位数 问题

在连接字符串中加入 Old Guids=true;

如:server=localhost;userid=root;password=;database=airsys;Charset=gb2312;Old Guids=true;

 

Resource

https://blog.csdn.net/weixin_33912453/article/details/85797631

https://blog.csdn.net/github_34777264/article/details/80931086

https://blog.csdn.net/cainong2005/article/details/79626550

http://www.cnblogs.com/zhurong/p/9481086.html

你可能感兴趣的:(.net,C#)