什么是数据的持久化?
官方定义:
数据持久化就是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称. 数据模型可以是任何数据结构或对象模型,存储模型可以是关系模型、XML、二进制流等。
自己理解:
数据持久化就是把数据保存在一个比较稳妥的介质上,比如磁盘。 比如游戏的存档,文件的保存等,我们所说的数据库的持久化就是将数据保存到数据库,“持久化”这个概念是和“暂时”概念相对的,数据在计算机中有一般有两个存储地,内存为暂存,因为电源关机就会数据丢失,如果需要反复经常使用,就要持久保存数据,把数据存在数据库里面,实现数据的持久化。
EF(数据持久化框架)是怎么实现数据持久化的?
使用实体框架将实体持久(保存)到数据库有两种情况:连接方案(在连接的场景下保存数据)和断开方案,这里先讨论连接方案。
连接方案:
在连接场景中,同一个上下文类(从DbContext派生)实例用于检索和保存实体,并且跟踪所有的实体。
下图是连接场景下CUD操作