// 实现对数据库的添加功能,添加实现EF框架的引用
40
41 public T AddEntity(T entity)
42
43 {
44
45 //EF4.0的写法 添加实体
46
47 //db.CreateObjectSet<T>().AddObject(entity);
48
49 //EF5.0的写法
50
51 db.Entry<T>(entity).State = EntityState.Added;
52
53
54
55 //下面的写法统一
56
57 db.SaveChanges();
58
59 return entity;
60
61 }
62
63
64
65 //实现对数据库的修改功能
66
67 public bool UpdateEntity(T entity)
68
69 {
70
71 //EF4.0的写法
72
73 //db.CreateObjectSet<T>().Addach(entity);
74
75 //db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);
76
77 //EF5.0的写法
78
79 db.Set<T>().Attach(entity);
80
81 db.Entry<T>(entity).State = EntityState.Modified;
82
83
84
85 return db.SaveChanges() > 0;
86
87 }
88
89
90
91 //实现对数据库的删除功能
92
93 public bool DeleteEntity(T entity)
94
95 {
96
97 //EF4.0的写法
98
99 //db.CreateObjectSet<T>().Addach(entity);
100
101 //db.ObjectStateManager.ChangeObjectState(entity, EntityState.Deleted);
102
103 //EF5.0的写法
104
105 db.Set<T>().Attach(entity);
106
107 db.Entry<T>(entity).State = EntityState.Deleted;
108
109
110
111 return db.SaveChanges() > 0;
112
113 }
114
115
116
117 //实现对数据库的查询 --简单查询
118
119 public IQueryable<T> LoadEntities(Func<T, bool> whereLambda)
120
121 {
122
123 //EF4.0的写法
124
125 //return db.CreateObjectSet<T>().Where<T>(whereLambda).AsQueryable();
126
127 //EF5.0的写法
128
129 return db.Set<T>().Where<T>(whereLambda).AsQueryable();
130
131 }

EF 5.0 和 EF4.0 语法区别的更多相关文章

  1. mvc4.0添加EF4.0时发生编译时错误

    解决此问题是因为MVC4.0默认未添加EF4.0的引用,EF4.0引用的是System.Data.Entity.dll, Version=4.0.0.0, 解决办法: 在web.config文件sys ...

  2. EF4.0和EF5.0增删改查的写法区别及执行Sql的方法

    EF4.0和EF5.0增删改查的写法区别 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>(). ...

  3. EF5.0区别于EF4.0的增删改写法

    // 实现对数据库的添加功能,添加实现EF框架的引用 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T& ...

  4. MVC ---- EF4.0和EF5.0增删改查的写法区别及执行Sql的方法

    EF4.0和EF5.0增删改查的写法区别 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>(). ...

  5. EF4.0和EF5.0增删改查写法区别

    1 public T AddEntity(T entity) 2 { 3 //EF4.0的写法 4 添加实体 5 //db.CreateObjectSet<T>().AddObject(e ...

  6. EF5.0区别于EF4.0的crud区别

    public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>().AddObject(entity); // ...

  7. GLSL ES 3.0 和 2.0 的区别

    GLSL ES 3.0 和 2.0 的区别 语法区别 attribute和varying. 取而代之的是 in和out 头文件多了个#version 300 es 纹理 texture2D 和 tex ...

  8. 计算机网络【9】—— HTTP1.0和HTTP1.1的区别及常见状态码

    一.HTTP1.0与HTTP1.1的区别 1.HTTP 1.1支持长连接(PersistentConnection)和请求的流水线(Pipelining)处理 HTTP 1.0规定浏览器与服务器只保持 ...

  9. bootstrap2.0与3.0的区别

    在阅读这篇bootstrap2.0与3.0的区别的文章之前,大家一定要先了解什么是响应式网站设计?推荐大家看看这篇"教你快速了解响应式网站设计" . 我觉得bootstrap的可视 ...

随机推荐

  1. CListCtrl 的应用

    CMFCListCtrl实现的功能:比较特别的就是通过CImage来扩展每行的高度 CMFCListCtrl m_lisTestResult; 1.插入列(创建表格) m_lisTestResult. ...

  2. SGU 131.Hardwood floor

    时间限制:0.25s 空间限制:4M 题意: 给出 n*m (1≤n.m≤9)的方格棋盘,用 1*2 的矩形的骨牌和 L 形的(2*2 的 去掉一个角)骨牌不重叠地覆盖,求覆盖满的方案数. Solut ...

  3. windows core audio apis

    这个播放流程有一次当初不是很理解,做个记录,代码中的中文部分,原文档是有解释的:To move a stream of rendering data through the endpoint buff ...

  4. Linux ./configure && make && make install 编译安装和卸载

    正常的编译安装/卸载: 源码的安装一般由3个步骤组成:配置(configure).编译(make).安装(make install).   configure文件是一个可执行的脚本文件,它有很多选项, ...

  5. Windows7 IIS7 无法启动计算机上的服务W3SVC如何修复

    错误提示 启动iis7管理服务器提示:无法启动计算机上的服务W3SVC 启动Windows Process Activation Service服务,报错:6801 指定资源管理器中的事务支持未启动或 ...

  6. POJ1611-The Suspects-ACM

    The Suspects Time Limit: 1000MS   Memory Limit: 20000K Total Submissions: 23002   Accepted: 11171 De ...

  7. ajax验证用户名和找回密码参考

    // JavaScript Document function chkname(form){ var user = form.user.value; if(user == ''){ alert('请输 ...

  8. windows 下PHP 和 nginx配置

    http://www.cnblogs.com/huayangmeng/archive/2011/06/15/2081337.html

  9. Linux服务器集群技术的概述

    目前,越来越多的网站采用Linux操作系统,提供邮件.Web.文件存储.数据库等服务.也有非常多的公司在企业内部网中利用Linux服务器提供这些服务.随着人们对Linux服务器依赖的加深,对其可靠性. ...

  10. nopcommerce 二次开发

    http://www.cnblogs.com/nopcommerce-b2c/ http://www.nopchina.net/ 数据库结构 http://www.xcode.me/open/docu ...