0配置EF连接MySql数据库_MVC+EF6-CodeFirst 连接MySQL并创建数据库和表_Demo

本文主要是介绍0配置EF连接MySql数据库_MVC+EF6-CodeFirst 连接MySQL并创建数据库和表_Demo,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

VS2019+MVC+EF6-CodeFirst 连接MySQL

1、准备环境(通过NuGet获取)

EntityFramework

41c8b225863c7523f56dcd7efa657489.png

MySql.Data.Entity

3bb5af8e7f316c12f9caf3f9c8964123.png

安装后确认

97231614213ed55e636d371001572caf.png

2、在MVC-Model文件夹下添加一个学生类,后面用它通过[数据迁移]在MySQL中创建一个表

public class Student

{

public int ID { get; set; }

public string LastName { get; set; }

public string FirstMidName { get; set; }

}

3、创建数据上下文 (先引入 using System.Data.Entity;)

namespace EFToMysqlDemo

{

// [DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))] 如果去掉这一句,EF自动创建数据库时会报错,而此时创建控制器又会报错,所以创建控制器的时候注销这句就可以了

[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]

public class EFDemoContext:DbContext

{

static EFDemoContext()

{

//开发环境中,如果数据结构发生变化,需要重新建库,每次建库后要重新插入测试数据,可以用DropCreateDatabaseIfModelChanges类来实现(生成环境中请使用 Migrations做数据迁移)

Database.SetInitializer(new DropCreateDatabaseIfModelChanges());

}

public EFDemoContext():base("EFToMysqlCon") { }

public DbSet Students { get; set; }

}

}

4、配置文件中添加链接字符串

4.1 具体参数按自己的做相应修改

5、数据迁移

5.1 数据迁移常用命令

命令1:启动EF数据迁移

Enable-Migrations -ContextTypeName 命名空间.上下文名称

命令2:创建迁移文件

Add-Migration 自定义名称

命令3:更新数据库

Update-Database

5.2 打开程序包管理器控制台

7daf463ed1b79c26ade6184a11b99f33.png

5.3 按常用命令(5.1)依次执行

9575967755117929893636d06de93a8e.png

5.4 通过Navicat查看MySQL

5ec32473acc1c732e76ca6d904cf438d.png

原文:https://www.cnblogs.com/zgsy/p/12637928.html

这篇关于0配置EF连接MySql数据库_MVC+EF6-CodeFirst 连接MySQL并创建数据库和表_Demo的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/425551

相关文章

Mysql的主从同步/复制的原理分析

《Mysql的主从同步/复制的原理分析》:本文主要介绍Mysql的主从同步/复制的原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录为什么要主从同步?mysql主从同步架构有哪些?Mysql主从复制的原理/整体流程级联复制架构为什么好?Mysql主从复制注意

Nacos注册中心和配置中心的底层原理全面解读

《Nacos注册中心和配置中心的底层原理全面解读》:本文主要介绍Nacos注册中心和配置中心的底层原理的全面解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录临时实例和永久实例为什么 Nacos 要将服务实例分为临时实例和永久实例?1.x 版本和2.x版本的区别

java连接opcua的常见问题及解决方法

《java连接opcua的常见问题及解决方法》本文将使用EclipseMilo作为示例库,演示如何在Java中使用匿名、用户名密码以及证书加密三种方式连接到OPCUA服务器,若需要使用其他SDK,原理... 目录一、前言二、准备工作三、匿名方式连接3.1 匿名方式简介3.2 示例代码四、用户名密码方式连接4

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socket read timed out的问题

《如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socketreadtimedout的问题》:本文主要介绍解决Druid线程... 目录异常信息触发场景找到版本发布更新的说明从版本更新信息可以看到该默认逻辑已经去除总结异常信息触发场景复

MyBatis编写嵌套子查询的动态SQL实践详解

《MyBatis编写嵌套子查询的动态SQL实践详解》在Java生态中,MyBatis作为一款优秀的ORM框架,广泛应用于数据库操作,本文将深入探讨如何在MyBatis中编写嵌套子查询的动态SQL,并结... 目录一、Myhttp://www.chinasem.cnBATis动态SQL的核心优势1. 灵活性与可

Macos创建python虚拟环境的详细步骤教学

《Macos创建python虚拟环境的详细步骤教学》在macOS上创建Python虚拟环境主要通过Python内置的venv模块实现,也可使用第三方工具如virtualenv,下面小编来和大家简单聊聊... 目录一、使用 python 内置 venv 模块(推荐)二、使用 virtualenv(兼容旧版 P

MySQL 表的内外连接案例详解

《MySQL表的内外连接案例详解》本文给大家介绍MySQL表的内外连接,结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录表的内外连接(重点)内连接外连接表的内外连接(重点)内连接内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选,我

CentOS 7 YUM源配置错误的解决方法

《CentOS7YUM源配置错误的解决方法》在使用虚拟机安装CentOS7系统时,我们可能会遇到YUM源配置错误的问题,导致无法正常下载软件包,为了解决这个问题,我们可以替换YUM源... 目录一、备份原有的 YUM 源配置文件二、选择并配置新的 YUM 源三、清理旧的缓存并重建新的缓存四、验证 YUM 源

Windows 系统下 Nginx 的配置步骤详解

《Windows系统下Nginx的配置步骤详解》Nginx是一款功能强大的软件,在互联网领域有广泛应用,简单来说,它就像一个聪明的交通指挥员,能让网站运行得更高效、更稳定,:本文主要介绍W... 目录一、为什么要用 Nginx二、Windows 系统下 Nginx 的配置步骤1. 下载 Nginx2. 解压