实体框架(Entity Framework)

实体框架(Entity Framework)

实体框架(Entity Framework)简介

ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,早期被称为 ObjectSpace,最新版本是EF6.0【CodeOnly功能得到了更好的支持】

实体框架Entity Framework 是 ADO.NET 中的一组支持开发面向数据的软件应用程序的技术。是微软的一个ORM框架。

EF插入实体

步骤:定义要插入实体的变量,并依次赋值,然后交给数据库访问上下文进行管理,最后保存回数据库。

 1 //定义 访问数据库的 上下文
 2
 3             DemoEntities demoEntities = new DemoEntities();
 4
 5             Product product = new Product();//定义实体
 6
 7             product.ProductName = "spring4G";
 8
 9             product.SubTime = DateTime.Now;
10
11             demoEntities.Product.AddObject(product);//加入上下午进行跟踪
12
13             demoEntities.SaveChanges();//保存回数据库

Linq To EF

简单查询:var result = from c in Entities.Product select c;

条件查询:

普通linq写法: var result = from c in Entities.Product where c.Gender ==‘w’ select c;

Lambda表达式写法:var result = from c in Entities.Customer.Where<Customer>(c =>c.Gender==‘w’);

排序分页写法: IQueryable<Customers> cust10 = (from c in customers UnitPrice = d.UnitPrice OrderId = order.OrderID,ProductId = d.ProductID,};

EF修改删除

修改操作只需要直接修改表实体的属性,然后调用SaveChange方法就可以了。

删除需要调用上下文的Remove()方法

 1 DemoEntities demoEntities = new DemoEntities();
 2
 3             var products = from c in demoEntities.Product
 4
 5                        where c.ProductId == 1
 6
 7                        select c;
 8
 9             var pro = products.FirstOrDefault<Product>();
10
11             pro.ProductName = "hello c";
12
13             demoEntities.SaveChanges();

追踪EF生成的SQL脚本方法

EF生成脚本最终由数据库执行,而截获SQL脚本最方便的就是使用SqlServer的Profile监测工具,不仅可以进行Sql脚本的监控而且可以监控脚本占用的CPU、脚本执行时间等

使用方法:Management Studio→工具→SqlServer Profile  然后登陆后就可以监控当前的sqlserver执行的SQL脚本

ORM in EF

Entity Framework 利用了抽象化数据结构的方式,将每个数据库对象都转换成应用程序对象 (entity),而数据字段都转换为属性 (property),关系则转换为结合属性 (association),让数据库的 E/R 模型完全的转成对象模型,如此让程序设计师能用最熟悉的编程语言来调用访问。而在抽象化的结构之下,则是高度集成与对应结构的概念层、对应层和储存层,以 及支持 Entity Framework 的数据提供者 (provider),让数据访问的工作得以顺利与完整的进行。

  (1) 概念层:负责向上的对象与属性显露与访问。

  (2) 对应层:将上方的概念层和底下的储存层的数据结构对应在一起。

  (3) 储存层:依不同数据库与数据结构,而显露出实体的数据结构体,和 Provider 一起,负责实际对数据库的访问和 SQL 的产生。

在EF中的实体数据模型(EDM)由以下三种模型和具有相应文件扩展名的映射文件进行定义。

· 概念架构定义语言文件 (.csdl) -- 定义概念模型。

· 存储架构定义语言文件 (.ssdl) -- 定义存储模型

· 映射规范语言文件 (.msl) -- 定义存储模型与概念模型之间的映射M。

实体框架 使用这些基于 XML 的模型和映射文件将对概念模型中的实体和关系的创建、读取、更新和删除操作转换为数据源中的等效操作。EDM 甚至支持将概念模型中的实体映射到数据源中的存储过程。

时间: 2024-10-07 13:56:27

实体框架(Entity Framework)的相关文章

实体框架- Entity Framework 基础篇

以前写数据层D层的时候里面有好多的SQL语句,如何省略到繁琐的SQL语句,微软提供了一种很好的方式-实体框架-Entity Framwork.一种对象映射机制,支持.NET开发人员使用域特定对象来出来关系数据,消除了对开发人员通常需要编写的大部分数据访问代码的需求. ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案.实体框架Entity Framework是ADO.NET中的一组支持开发面向数据的软件

C#代码生成工具:文本模板初体验 使用T4批量修改实体框架(Entity Framework)的类名

转自:http://www.cnblogs.com/huangcong/archive/2011/07/20/1931107.html 在之前的文本模板(T4)初体验中我们已经知道了T4的用处,下面就看看如何用它来实现批量修改实体框架(Entity Framework)中的类名.我们都知道ADO.NET 实体数据模型中有一种方式是以数据库模型来生成数据模型的,这是个很简便的实体数据模型生成的方式,但是因为微软提供的自定义接口不足,我们无法实现对生成的数据模型实体类批量进行修改(至少我上网找了很久

实体框架(Entity Framework)快速入门--实例篇

在上一篇 <实体框架(Entity Framework)快速入门> 中我们简单了解的EF的定义和大体的情况,我们通过一步一步的做一个简单的实际例子来让大家对EF使用有个简单印象,看操作步骤 第一步:创建控制台项目 这个就不多说了,如果新建项目你还不知道,那先去学学基础吧. 第二步:创建实体模型 在项目上右击 添加新建项目→Ado .Net 实体数据模型 如下图所示: 第三步:与现有的 数据库 进行连接生成EF实体 在做这步之前,首先确定你是否已经有现有数据库,当然在这提供我自己的数据库脚本.

实体框架Entity Framework 4.1快速入门

介 绍 在旧的Entity 框架中,开发者可以从已存在的数据库中产生业务实体的模型,这种开发方法被称为数据库驱动的开发方法.而在4.1的Entity Framework中,支开发者先创建实体业务类,然后再产生相关的数据库文件,这种开发方法可以称为“代码先行”的开发方法.这种方法对于开发者来说是很有好处的,首先,会让开发者从面向对象的思维角度出发,去构建业务逻辑中的实体模型,然后再根据实际的需要去生成数据库文件,是真正的面向对象的思维开发方法. 本文中要使用Entity Framework 4.1

实体框架(Entity Framework)简介

简称EF,与ADO.NET关系 ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,早期被称为 ObjectSpace,现已经包含在 Visual Studio 2008 Service Pack 1 以及 .NET Framework 3.5 Service Pack 1 中发表. 实体框架Entity Framework 是 ADO.NET 中的一组支持开发面向数据的软件应用程序的技术.是微软的一个

实体框架(Entity Frmaework)简介

l简称EF  NH l与Asp.Net MVC关系与ADO.NET关系 lADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,早期被称为 ObjectSpace,最新版本是EF6.0[CodeOnly功能得到了更好的支持] l实体框架Entity Framework 是 ADO.NET 中的一组支持开发面向数据的软件应用程序的技术.是微软的一个ORM框架.

Entity Framework 学习

Entity Framework 学习初级篇1--EF基本概况... 2 Entity Framework 学习初级篇2--ObjectContext.ObjectQuery.ObjectStateEntry.ObjectStateManager类的介绍... 7 Entity Framework 学习初级篇3-- LINQ TOEntities. 10 Entity Framework 学习初级篇4--EntitySQL. 17 Entity Framework 学习初级篇5--ObjectQ

011.EF实体框架(入门)

1>ASP.NET MVC开发中模型的实现方法 模型的实现方法 两种方法1手动2自动(工具 EF)1.1手动创建模型(写好模型元数据)[练习过了 项目!] 前提条件:先手动创建数据库和表 (模型:实体类,实体访问类,Sqlhelper) (Sqlhelper使用ADO.NET传统方法实现) 1.2使用EF(Entity Framework:实体框架)创建模型 2>EF的概念2.1什么是EF***EF是 实体框架 (Entity Framework)的简称,***EF 可以用来定义模型类并操作数

Entity Framework基础—第二篇

实体框架(Entity Framework) 简称EF,属于数据持久(持久保存)架里面的一种,其他的还有NHibernate,ibaties,Dapper.PetaPOCO...等,都是基于ORM思想. 首先介绍下O/R Mapping(ORM) 1.什么是ORM?ORM指的是面向对象的对象模型和关系数据库的数据结构之间的相互转化,可以理解为把表实体和表相互转化(在任何平台都适用,如php,java等). 传统ADO.net操作数据库: 基于ORM思想操作数据库: 接下来我们就一步步创建项目: