CodeFirst之深入了解EntityFramework

时间:2023-03-09 01:37:15
CodeFirst之深入了解EntityFramework

一.概要

本文在基于CodeFirst思想之上 深入了解EntityFramework。其实我个人一直头疼的问题就是每次Entity类一有变动,无论是新增表,更改表结构等 EF一律把数据库删掉重建,这样之前存在的数据一起删除。解决方法如下:

技术上的实现是C#(.net framework4.6.1) 控制台 + PostgreSQL 10.2.1

代码:https://pan.baidu.com/s/1ggzHRub(此代码未包含解决方案,你可以试着我提供的解决方案进行操作一下)

二.实现过程

打开 工具--Nuget包管理器--程序包管理器控制台

选择运行的项目,我选择的是Console_CodeFirst项目(重要的,别忘)

输入 enable-migrations

这样程序会自动生成一个类:Configuration 这是数据迁移的配置文件

好了,就是这么简单。

三.如何使用

之后每个操作,比如新建表,先在数据库postgre中建表(建表必须仿照EF的建表思路来,有主键自增长),然后再程序中建相应实体,然后就可以添加数据了,也不会删除原有其他表的数据。

四.总结

基本问题已经解决,但是还有一个问题,EF的Entity与数据库表是一一对应关系,你数据库有几张表,那么同样程序中就有几个Entity;我面临的问题就是如何用一个Entity去对应多张表,如果有网友知道的,请不吝赐教!