ef mysql 的坑_C# EF 与 MySql 的那些坑

之前一直想用 mysql 和 ef 。然后多次尝试也只能感叹 还是 sqlsever 是亲儿子。

今天在单位又尝试了一次,然后就成功了,记录一下遇到的问题。

首先是安装包和驱动?。

请保证 MySql.Data / MySql.Data.Entity.EF6 / mysql Connector/NET 版本对应一致

2019.03  我使用的版本是· 6.10.8

Connector/NET 下载地址: https://dev.mysql.com/downloads/connector/net/6.8.html

连接串:

1

2

3

安装完后 EF的配置会自动添加 可以确认一下:

标红的这一段要手动加。databaseInitializer是初始化的类绑定。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

然后运行就是是两个异常

Specified key was too long; max key length is 767 bytes。

Model compatibility cannot be checked because the database does not contain。

这两个异常花了我好久时间查来查去,各种千奇百怪的解决方案。

最后发现 https://www.cnblogs.com/Linner/p/6297223.html 的解决方法简单的解决了问题

1 [DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]2 public classAppContext : DbContext3 {4 staticAppContext()5 {6 DbConfiguration.SetConfiguration(newMySql.Data.Entity.MySqlEFConfiguration());7 }8

9 public AppContext() : base("xxxxxx")10 { }11

12 public DbSet Users { get; set; }13

14

15 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值