VS2017MVC+EF+MySQL环境搭建
记录一次环境搭建的过程以及出现的问题和解决方法。
编译器Visual Studio 2017Enterprise Edition
1.新建一个MVC应用程序
2.在新建的MVC程序中选择Models ->添加->新建项
选择数据->ADO.NET实体数据模型->来自数据库的EF设计器->新建连接
在默认情况下,第三项“MySQL Database”是不存在的,这时候需要添加mysql与visual studio连接的驱动。
3.驱动连接方法
1> 确认ODBC驱动,在控制面板->所有控制面板项->管理工具 中查看ODBC数据源64位。
确认图中两驱动是否存在。假如不存在,去官方下载:https://dev.mysql.com/downloads/connector/odbc/ 安装,完成后,重新打开 ODBC数据源,确认驱动情况,最好重启。
2>安装 mysql-for-visualstudio.msi
这里安装的版本是:mysql-for-visualstudio-1.2.7.msi
3> 安装mysql-connector-net.msi
这里安装的版本是:mysql-connector-net-6.6.6.msi,一开始安装的其他两个版本6.10.5和6.9.9均无效。
所有都安装完成后,重启,打开Visual Studio,就可以看到MySQL Database数据源了,然后进入连接属性(连接之前需要如果MySQL服务器没有启动,则需要先进入services.msc启动MySQL服务)。
4、进入实体数据模型向导
选择需要创建模型的数据表,直接连接的话报以上错误,这时的解决办法是:
1> 运行services.msc,重启MySQL服务。
2> 在MySQL运行一下命令: use mydbname; set global optimizer_switch='derived_merge=OFF';
3> 重新生成 .edmx
成功后即看到Models下面生成的实体数据模型
5、添加控制器
选择Controllers->添加->控制器
选择EF框架的控制器。
接下来如果选择默认的数据上下文类,报如下错误。
解决方法是:
1>Nuget包管理器运行 Install-Package Microsoft.aspnet.Web.Optimization
2>安装了这个:EF6 实体框架EntityFramework.SqlServerCompact,如下图
3>重新生成解决方案,在数据上下文类中新建一个上下文类型。
添加后的文档如下:
最新文章
- Windows系统防火墙用法
- http80端口转发(实现微信公众号接口绑定IP时,同时支持多个公众号)
- NPTL 线程同步方式
- CSS3 auto revolution practitioner!
- OpenCV CommandLineParser 的用法
- linux apache httpd安装(安装全部modules)
- SQL 必知必会-- 第1课:数据库基础和什么是SQL
- 在ASP.NET中如何判断用户IE浏览器的版本
- Effective Java之并发
- 《University Calculus》-chaper13-多重积分-二重积分的计算
- 17.1.1.5 Creating a Data Snapshot Using mysqldump 创建一个快照使用mysqldump:
- 遍历json创建树状表(首先的前提条件是要引入jquery的jquery treeTable插件)
- iOS 之 ARC 的内存泄露
- Delphi的时间与字符串函数代码示例
- 201521123057 《Java程序设计》第11周学习总结
- CSS盒模型深入理解
- 题解-SDOI2015 约数个数和
- fastJson顺序遍历JSON字段(转)
- FFmpeg AVPacket和AVFrame区别
- 数据挖掘算法以及其实现zz
热门文章
- BZOJ2795/2890/3647 [Poi2012]A Horrible Poem 【字符串hash】
- javascript实现deepEqual和shallowEqual
- BZOJ1491 洛谷2047 NOI2007 社交网络
- 【BZOJ 3569】DZY Loves Chinese II 随机化+线性基
- HDU 5636 关键点的 floyd 最短路问题
- POJ 2429 long long 质因数分解
- std::string在多字节字符集环境下substr的实现方法
- session 超时设置
- Tomcat设置开启时自动访问某个servlet类存在的问题
- hdu 3948 The Number of Palindromes