欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

EF Code first 和 DDD (领域驱动设计研究)系列一

程序员文章站 2022-06-19 10:38:06
在上个公司工作时,开发公司产品的过程中,接触到了ef code first. 当时,整个产品的架构都是lead developer设计建立的,自己也不是特别理解,就赶鸭子上架跟着一起开发了。 现在回...

在上个公司工作时,开发公司产品的过程中,接触到了ef code first. 当时,整个产品的架构都是lead developer设计建立的,自己也不是特别理解,就赶鸭子上架跟着一起开发了。

现在回过头来看,加上自己研究读了一些这方面技术文章,了解的也更深了。故记录如下:

首先需要了解的一些相关的概念:

poco

poco (plain old clr object) 的意思就是 "plain old c# object". 它的内在含义是指那些没有从任何类继承,也没有实现任何接口,更没有被其他框架侵入的对象.

po

 po (persistant object 持久对象)是指持久对象. 持久对象必须对应于数据库中的entity, 所以和poco有区别。 poco对象是由new创建,由gc回收。 但是持久对象是insert数据库创建,由数据库delete删除.  也就是说,持久对象的生命周期和数据库密切相关。另外,持久对象往往只能存在一个数据库connection之中,connection关闭之后,持久对象就不存在了。 而poco只要不被gc回收,总是存在的.

orm

orm (object/relational mapping)对象关系映射, 主要是把数据库中的关系数据映射成为程序中的对象.

entity framework

entity framework的全称是ado.net entity framework, 是微软开发的基于ado.net的orm(object/relational mapping)的框架