Entity Framework 学习之路(一)
准备知识
1、自动属性(Auto-Implemented Properties),C#自动属性可以简化原来我们手工的来声明一个私有成员变量以及和属性get,set的书写方式。
2、隐式类型var,是C#3.0新特性提供的,var关键字指示编译器根据初始化语句右侧的表达式推断变量的类型。
3、匿名类,将一组只读属性封装到单个对象中,而无需首先显示定义一个类型,类型名由编译器生成。
4、对象初始化器和集合初始化器,对象初始化器是利用了编译器对对象中对外可见的字段或者属性进行按序赋值,在编译还是隐式调用了构造函数,对字段或属性的赋值可以是一个或者多个。
5、Lambda表达式,是一个匿名函数,他可以包含表达式和语句,可用于创建委托。
6、扩展方法,扩展方法是一种特殊的静态方法,它定义在一个静态类中,但可以在其他类的对象上向调用实例方法那样进行调用。因此,通过扩展方法,我们就可以在不修改一个类型的前提下对一个类型进行功能上的扩充,这种方法并不会产生新的类型,而是采用向已有类中加入新方法的方式来完成功能的扩展。
Entity Framework的全称是ADO.NET Entity Framework,是微软开发的基于ADO.NET的ORM(Object/Relational Mapping)框架。
EF中的实体数据模型(EDM)由以下三种模型和具有相应文件扩展名的映射文件进行定义。
· 概念架构定义语言文件 (.csdl) -- 定义概念模型。
· 存储架构定义语言文件 (.ssdl) -- 定义存储模型(又称逻辑模型)。
· 映射规范语言文件 (.msl) -- 定义存储模型与概念模型之间的映射。
实体框架使用这些基于 XML 的模型和映射文件将对概念模型中的实体和关系的创建、读取、更新和删除操作转换为数据源中的等效操作。EDM 甚至支持将概念模型中的实体映射到数据源中的存储过程