第一步:创建一个控制台应用程序,起名为EFDemo

2. 第二步:创建一个实体模型

  (1)在EFDemo项目上面右击选择添加—新建项—在已安装的选项中选择数据—ADO.NET实体对象模型,如图所示:

  

3. 与数据库进行连接

  (1)    单击第二步建立的实体数据模型的添加按钮,然后我们选择从数据库生成,如图所示:

  

  (2)    单击下一步,然后如果我们以前没有操作的话在这里将是为空的,然后我们单击新建连接,建立一个数据库的链接,然后选择“是,在连接字符串中包含敏感数据”,如图所示:

  (3)    单击下一步,选择我们要生成实体框架对应的表,试图或者存储过程和函数,因为这里我只使用到了表,所以选择表的选项就行了,如图所示:

  

  (4)    单击完成,这数据库自动帮我们生成了实体对象和实体类,然后可以看到我的解决方案EFDemo下面生成的东西和VS2010不相同,当然大致的使用还是没有变化的,只是有一些细节变了

  

4. 第四步,EF的第一个使用-增加

  (1)    添加如下代码:

  

  (2)    数据库中添加了一条数据,如图所示:

  

  (3)    然后我们可以打开SQL Server2012数据库,单击工具—>SQL Server Profiler,打开工具,然后我们运行代码,跟踪可以看一下给我们生成的代码是什么,如图所示:

  (4)    还可以使用初始化器来实现数据的添加信息,效果和上面的一摸一样,代码如图所示:

  

5. 第五步,EF的第一个使用-修改

  (1)    添加如下代码,如图所示

  

  (2)    数据库中修改语句如图所示

  

  (3)    在SQL Server Profiler中查看生成的SQL语句,如图所示:

6. 第五步,EF的第一个使用-删除

  (1)    添加如下代码,如图所示

  

  (2) 数据库中修改语句如图所示

  

  (3) 在SQL Server Profiler中查看生成的SQL语句,如图所示:

7. 第五步,EF的第一个使用-查询

  (1)    实现查询的第一种方法 foreach循环

  1)实现代码如图所示:

  

  2)结果就不用展示了,在我这里已经实现了

  3)查看SQL Server Profiler中生成的SQL语句,如图所示:

  

(2) 实现查询的第二种方法  Linq和List集合

  1)实现代码如图所示:

  

  2)查看SQL Server Profiler中生成的SQL语句,如图所示:

  

(3) 实现查询的第三种方法 Linq

  1) 实现代码如图所示:   

  

  2)查看SQL Server Profiler中生成的SQL语句和上面的第二个区块中的执行语句一样,这里就不累赘了。

  (4) 实现一个分页的查询

1) 实现代码如图所示:

  

  2) 查看SQL Server Profiler中生成的SQL语句和上面的第二个区块中的执行语句一样

  

  (5) 实现查询的第五种方法 lambda

   1) 实现代码如图所示:

  

  2) 生成的SQL脚本在数据库Profiler里面查看和下面写的基本是一样的。所以这里就不贴出来了,大家可以试一下

  3)lambda表达式查询部分列

  var dataLambda = bjh.HKSJ_USERS.Where(c => c.ID > 100)

.Select(c => new { id = c.ID, Name = c.LoginName });

  foreach (var item in dataLambda)

  {

  Console.WriteLine(item.id + "," + item.Name);

    }

转自:http://www.360doc.com/content/12/1224/15/11110379_256023683.shtml#

Entity Framework快速入门笔记—增删改查的更多相关文章

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

    在上一篇 <实体框架(Entity Framework)快速入门> 中我们简单了解的EF的定义和大体的情况,我们通过一步一步的做一个简单的实际例子来让大家对EF使用有个简单印象,看操作步骤 ...

  2. Entity - 使用EF框架进行增删改查 - 模型先行

    模型先行:先创建数据库实体模型,然后再进行数据库的增删改查. 基本步骤是不变的,可参照 <Entity - 使用EF框架进行增删改查 - 数据库先行> 其中的不同是,在创建数据库实体模型的 ...

  3. Entity Framework快速入门--ModelFirst

    Entity Framework带给我们的不仅仅是操作上的方便,而且使用上也很是考虑了用户的友好交互,EF4.0与vs2010的完美融合也是我们选择它的一个理由吧.相比Nhibernate微软这方面做 ...

  4. Entity Framework快速入门--IQueryable与IEnumberable的区别

    IEnumerable接口 公开枚举器,该枚举器支持在指定类型的集合上进行简单迭代.也就是说:实现了此接口的object,就可以直接使用foreach遍历此object: IQueryable 接口 ...

  5. Mybatis入门之增删改查

    Mybatis入门之增删改查 Mybatis如果操作成功,但是数据库没有更新那就是得添加事务了.(增删改都要添加)----- 浪费了我40多分钟怀疑人生后来去百度... 导入包: 引入配置文件: sq ...

  6. Hibernate入门_增删改查

    一.Hibernate入门案例剖析:  ①创建实体类Student 并重写toString方法 public class Student { private Integer sid; private ...

  7. 一步一步教你用c# entity framework6 连接 sqlite 实现增删改查

    使用entity framework6 连接 SQLite 数据库 前言 很多小型应用程序中,都要使用数据库,而现在比较流行的本地数据库非SQLite莫属. 第一步:前期准备 开发环境:vs2015 ...

  8. JDBC【1】-- 入门之增删改查

    目录 1.jdbc是什么 2.使用IDEA开发 2.1 创建数据库,数据表 2.2 使用IDEA创建项目 1.jdbc是什么 JDBC(Java DataBase Connectivity,java数 ...

  9. Redis入门之增删改查等常用命令总结

    Redis是用C语言实现的,一般来说C语言实现的程序"距离"操作系统更近,执行速度相对会更快. Redis使用了单线程架构,预防了多线程可能产生的竞争问题. 作者对于Redis源代 ...

随机推荐

  1. javascript调用oc的方法

    1.引入#import <JavaScriptCore/JavaScriptCore.h> 2.JSContext *jsContext = [self.webView valueForK ...

  2. OC - 9.使用Quartz2D绘制下载进度条

    效果图 实现思路 要实现绘图,通常需要自定义一个UIView的子类,重写父类的- (void)drawRect:(CGRect)rect方法,在该方法中实现绘图操作 若想显示下载进度,只需要实例化自定 ...

  3. spring定时器用Annotation兑现

    spring定时器用Annotation实现 0人收藏此文章, 我要收藏发表于3个月前 , 已有46次阅读 共0个评论 1.ApplicationContext.xml配置 a).需要在xmlns里面 ...

  4. form 表单 action 参数 接收不了

    <form method="get" action="/test/index.php?mod=123456" > <input type=&q ...

  5. I/O端口与I/O内存

    端口的概念:设备通过系统总线上的接口与CPU相连,接口电路中含有多种寄存器,CPU向设备读写数据实际上是向接口上的寄存器读写数据,这些寄存器称为I/O端口.一个接口通常包含控制端口,数据端口,状态端口 ...

  6. IOS 学习笔记 2015-03-20 OC-集合-数组

    [NSArray] 一 定义 1 不可变数组 2 oc中数组的元素可以是任何对象 3 数字中装有元素的地址 二 初始化 NSArray *变量 = [[NSArry alloc] initWithOb ...

  7. PHP文章关键词相似短尾长尾内链替换方法介绍

    对于互联网程序来说,对文字正文内容做关键词内链优化是常态的工作之一.一方面有人手动来处理关键词内链,这个效率太低:一方面通过程序自动添加内链,这样子也省事而且便于管理: 今天我们探讨的就是给自动给文章 ...

  8. C#读取带命名空间的xml,xaml文件的解决方案

    使用C#读取xml文件有三种常用的方式: 1.xmlDocument 2.XmlTextReader 3.Linq To Xml 但是这些方式在读写有些带命名空间的xml时就不知道怎么办了(例如把xa ...

  9. 如何利用C生成.so供Mono调用

    Mono诞生的初衷是为了吸引更多的Windows .Net程序员来加入Linux平台的开发.但在Linux世界中C语言依然是 主流.很多时候一些关键应用(比如大型 笛卡儿 乘积运算.需要调用平台硬件功 ...

  10. 程序在nor flash中真的可以运行吗?

    程序在nor flash中可以运行,但是是有限制的,它不能像RAM那样随意的写(尽管它可以随意的读).在norflash上,不能运行写存储器的指令,不过排除写的地方是RAM类.实验中的三个文件如下所示 ...