上篇博客中已经简单的介绍了EF的概念,这里就不多介绍了,接着学习下面的知识。
一,EF的三种类型
1.DBFirst:其实就是先创建数据库,然后再映射到实体模型中。
上篇博客对DBFirst的操作已经介绍过了:EF框架基础(一)
2.ModelFirst:是我们经常用到的,先创建实体模型再映射到数据库中。下面详细介绍一下:
(1)在VS中创建实体数据模型空模型,设计实体。如图:
(2)创建完成以后,点击实体模型空白处,右击根据模型生成数据库。如图:
(3)点击之后,就会出现如图所示:
(4)填写完成后,点击确定,出现如图:
(5)点击完成,这时就会在VS中多出一个SQL脚本。如图:
(6)打开SQL脚本,右击执行。
完成以后,打开SQL Server,就会发现多出一个数据库。
3.CodeFirst:代码执行。用代码映射到数据库。(目前正在学习,将在下篇博客呈现)。
二,更改数据库字段方法
一般,写程序都会增加新的需求,这时可能数据库中的字段不满足需求,这就需要进行添加或修改。一般 有两种方法:
(1)修改实体模型中的属性,然后按照上面ModelFirst的步骤,右击从实体模型更新到数据库。
(2)修改数据库中的字段,修改完成后,在VS的实体模型空白处,右击,选择从数据库更新模型。
这里需要注意的是:从实体模型中修改属性更新到数据库,有一个缺陷就是更新完成以后数据库中的数据就会消失。
ModelFirst和CodeFirst都更是接近面向对象思想,而不是面向数据库。在CodeFirst和ModelFirst中通常我们选 择ModelFirst,因为这样可以避免我们手工写很多POCO类和映射关系。