vs2019+mvc+ef6-codefirst 连接mysql
1、准备环境(通过nuget获取)
entityframework
mysql.data.entity
安装后确认
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 打开程序包管理器控制台
5.3 按常用命令(5.1)依次执行
5.4 通过navicat查看mysql
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!