11.23 EF

一、EF框架

a、EF框架:全称EntityFramework ,它微软提供的一种ORM工具,支持面向数据的软件应用程序的技术。ORM让开发人员节省数据库访问的代码时间,将更多的时间放到业务逻辑层代码上。

b、ORM:ORM 是将数据存储从域对象自动映射到关系型数据库的工具。ORM主要包括3个部分:域对象、关系数据库对象、映射关系。ORM使类提供自动化CRUD,使开发人员从数据库API和SQL中解放出来。

c、EF框架: 

 

              EDM (实体数据模型):EDM包括三个模型,概念模型、 映射和存储模型。

              概念模型 ︰ 概念模型包含模型类和它们之间的关系。独立于数据库表的设计。

              存储模型 ︰ 存储模型是数据库设计模型,包括表、 视图、 存储的过程和他们的关系和键。

d、EF的三种使用场景: a、从数据库生成Class    b、由实体类生成数据库表结构   c、通过数据库可视化设计器设计数据库,同时生成实体类。

e、EF框架的三种模式:

1)、DataBase First 数据库优先, 传统的表驱动方式创建EDM,然后通过EDM生成模型和数据层代码。除生成实体模型和自跟踪实现模型,还支持生成轻型DbContext。简历理解就是先设计数据库,创建好数据库映射成对象和上下文。

2)、Model First 模型优先,先创建EDM模型,再生成DDL数据库脚本和模型和数据层代码。除生成实体模型和自跟踪实现模型,支持生成轻型DbContext。简单理解就是设计EDM模型然后生成到数据库和创建对象和上下文。

3)、CodeFirst 代码优先,手动创建POCO模型,数据层DbContext及映射关系,通过Database.SetInitializer生成数据库,这种方式较灵活,但是需要手动定义实体模型和关系映射。简单理解就是自己写好实体对象和映射关系,最后通过命令生成到数据库中去。

二、LINQ的First与FirstOrDefault方法和Last与LastOrDefault方法。

  1. First - 返回集合中的第一个元素;不延迟  
  2. FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值);不延迟  
  3. Last - 返回集合中的最后一个元素;不延迟  
  4. LastOrDefault - 返回集合中的最后一个元素(如果没有则返回默认值) 

         补充:Contains :判断集合中是否包含有某一元素;不延迟 

       ToList :将集合转换为List<T>集合;不延迟  

a、First与FirstOrDefault的方法,均是返回集合中的第一个元素,区别在于如果没有结果,前者(First)会有抛出异常,后者(FirstOrDefault)会返回默认值。
b、Last与LastOrDefault的方法,均是返回集合中的最后一个元素,区别在于如果没有结果,前者(Last)会有抛出异常,后者(LastOrDefault)会返回默认值。

三、Find(id)方法

Find查找的是字符的相对位置,而不是查找值 Find函数区分大小写,与Find函数相似的函数是search find找到数据库中的字段,where根据条件进行查询,add添加数据, remove删除数据

 

 

posted @ 2021-11-23 23:10  木月浅  阅读(114)  评论(0)    收藏  举报