C# EF技术

本文介绍了C#中的ORM框架Entity Framework(EF),详细阐述了ORM的概念、优势以及.NET中的ORM框架。重点讲解了EF的本质,包括Object Services、EDM实体数据模型、Entity Client实体代理和ADO.NET Provider。同时,列举了EF应用程序的优点,如减少数据库依赖、提高开发效率。最后,探讨了EF的创建方法,如DataBase First和Code First,并详细展示了DataBase First的创建过程,包括EDM元数据、实体文件、数据库上下文类和使用EF进行CRUD操作。
摘要由CSDN通过智能技术生成

 

目录

EF简介

ORM的概念

ORM技术的优势

.NET中的ORM框架

EF的本质

Object Services

EDM实体数据模型

Entity Client实体代理

ADO.NET Provider

Entity Client和ADO.NET

EF应用程序有以下优点

EF框架的搭建

EF的创建

三种创建的区别

DataBase First

EDM元数据

实体文件

数据库上下文类

使用EF查询单表数据

使用EF实现CRUD

Code First


EF简介

ORM的概念

对象关系映射Object Relation Mapping ,通俗说:用操作对象的方式来操作数据库。是一种程序技术,用于实现面向对象编程语言里不同类型关系数据之间的转换,从效果上说,它其实是创造了一个可在编程语言中使用的“虚拟对象数据库”

关于使用服务端语言操作数据库-ADO.NET技术,ADO.NET技术学习程序分层时学习过Model层,而这里的模型层指的是在服务端编程语言中用来映射数据库中数据模型的一个对象映射。

而在ORM技术而言,可以理解为ORM主要是为了更方便快速的实现ADO.NET技术

ORM技术的优势

  1. 首先在学习编程中,最终都要学习的是访问数据库,而在C#语言中使用C#语言访问数据库技术是微软提供的ADO.NET技术

  2. 因此在做程序编程时,只要有关数据库的操作,我们总结出来一套经验:先写DBHelper,然后创建目标数据库中的数据对象模型,这个步骤很麻烦,但是又不得不写

  3. 实现更加方便快捷的开发,方便数据库移植

.NET中的ORM框架

  1. NHibernate

  2. MyBatis.NET

  3. LinQ to SQL(已经不使用)

  4. ADO.NET Entity Framework

EF的本质

EF底层仍然是对ADO.Net的封装。EF支持SQLServer、MYSQL、Oracle、Sqlite等所有主流数据库。

Object Services

它是Entity Framework提供的一系列操作业务对象的API。这些API都依赖Entity Client实现对数据库的访问

EDM实体数据模型

  1. 作用:将关系数据库模型映射为实体数据模型,由三部分组成,存放在一个扩展名为.edmx的XML文件中

  2. SSDL:负责与数据库中的数据表做实体对应(就是将数据库中数据表结构和关系用XML文件描述)

  3. MSL:将存储模型中的字段和概念模型中的属性对应

  4. CSDL:概念模型对应的实体类,用实体类表示数据库中的对象

Entity Client实体代理

  1. 概念:Entity Framework实现了一套类似于ADO.NET中的数据库操作类,这些操作类称之为Entity Client

  2. 作用:用来操作EMD实体数据模型

ADO.NET Provider

  1. 作用:翻译成SQL语句,用来访问数据库

  2. 说明:Entity Framework是ADO.NET的一个技术子集

Entity Client和ADO.NET

  1. ADO.NET的连接类是向数据库发送SQL命令操作表或试图,Entity Client是向EDM发送Entity SQL

  2. <
  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值