ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

时间:2024-03-31 16:00:09

不知道当初是怎么想的,用了Mysql,之后用VS连接的时候就出问题了……

以下差不多就是把我碰到过的/能想到的问题都罗列了一遍,诸君引以为戒……

为此还各种卸了重装,蛋疼……

PS:基本上是错误合集,如果想要看一波正确操作,只要看蓝色字即可

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

新建连接的时候会发现……貌似没有Mysql的选项

网上找了一圈,发现是要装一个叫做mysql-for-visualstudio的东西,长得就像下面这样:

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

https://dev.mysql.com/downloads/windows/visualstudio/

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

然后下载这个最新版的即可

重新打开VS进行操作之后就能看到Mysql了!!!!

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

 

(若是还没有看到,可能是没有安装另外一个叫mysql-connector-net的东西

https://dev.mysql.com/downloads/connector/net/

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

这个小东西非常坑,最新版为8.0.11,但是不建议使用,原因在下面讲到

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

以前的三个版本中,我一开始是用的6.10.7,但是后来发现使用时会出现版本不对应的问题,所以一开始建议还使用6.9.12)

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

PS:以上的是解决无法连接Mysql的问题,以下的是EF总爆炸的问题

 

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

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

之后随便选一个(选个自己要用的吧,我这儿是测试的……)

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

哟~看起来好像没什么问题了啊,但是点了下一步之后可能会出现如下:

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

嗯???为什么不能建EF6???

打开nuget包管理器

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

找到这两个包,然后安装其6.XXX的版本

由于我用的是VS2017的,也不知道其他的版本怎么样

但是Nuget控制台应该都有,按照install-package+空格+包名+空格+ -version+空格+版本号 的格式运行:

install-package entityframework

install-package entityframework.zh-hans

这个直接装最新版貌似也没什么问题,大小写无所谓

之后试图再次创建,又会出现如下错误

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

这边是少了Mysql的包,还是如上面那样,使用Nuget安装一个叫Mysql.Data.Entity的包

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

注意安装的版本6.9.12

要和之前装过的connector版本一致

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

之后会自动安装这两个包

Nuget控制台用下面两个:

install-package mysql.data -version 6.9.12

install-package mysql.data.entity -version 6.9.12

如果还有问题,手动添加引用吧:

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

一连串操作之后看一下web.config,直接拉到最下面,注意是否EF6,还有版本是否一致,我之前装的6.10.7,直接就不能用,现在能够正常使用的最新版的应该就是6.9.12

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

千辛万苦!!!!!!

终于!!!!

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

碰到下面什么的安全警告直接点“是”就好了,如果点“否”之前做了那么多事情都是干嘛的?!?

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

之后添加控制器

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

点了添加之后又蹦出来这么一个错误?!?

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

只要重新生成一下项目就好了……

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

ASP.NET MVC + Mysql EF创建实体数据模型(数据库优先)的一些问题总结

 

PS:基本上是错误合集,如果想要看一波正确操作,只要看蓝色字即可

转载自:https://blog.csdn.net/clannadforever/article/details/80801553