// 实现对数据库的添加功能,添加实现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. VirtualBox 中的UBUNTU和java环境的配置以及各种常用说明

    本来是要ubuntu下学习C++的,但是又懒的用高手们推荐的各种记事本级的操作,所以要用IDE.(我用IDE我自豪,人类的进化就是建立在工具的使用这个基础之上的.)我选用了oracle的netbean ...

  2. 未能解析目标框架“.NETFramework,Version=v4.0”的 mscorlib 错误的解决办法

    查看项目属性,发现该项目的目标框架是.NET Framework 4 Client Profile ,而被引用的程序集的目标框架是.NET Framework 4,将该项目的目标框架修改成.NET F ...

  3. jquery动画效果中,避免持续反应用户的连续点击

    一.某些动画效果中,避免持续连续反应用户的连续点击(这标题真不好描述) 意思就是指用户点击速度很快,完成一次效果的时间不能很快结束的话,就会出现用户不点击了,效果还在持续.看下面例子就明白了,手风琴效 ...

  4. SAE flask及其扩展 bug指南

    1. ImportError: No moudle named ext.bootstrap 导入依赖包失败 SAE会提供一种机制通过导入virtualenv.bundle来解决 此处有坑:官网文档中说 ...

  5. DEDECMS 关键字不能小于2个字节!

    今天在做DEDECMS模板时,突然遇到了“关键字不能小于2个字节!”晕,是怎么回事呢?百度了一下,找到了答案,把他记录下来,方便自己日后再遇到这种问题时,可以查询: <form name=&qu ...

  6. 为什么Android AsyncTask的使用要遵循五大原则

    引言 AsyncTask是一个围绕Handler和Thread而设计的助手类,封装了在工作线程中与UI交互的细节,只需要对应重写几个回调方法即可,并使得代码更加简洁,优雅.但要注意的是AsyncTas ...

  7. 学习opencv 第六章 习题十三

    用傅里叶变换加速卷积,直接上代码,Mat版是Copy他人的. CvMat版 #include "stdafx.h" #include "cv.h" #inclu ...

  8. yii2 日志(log)的配置与使用

    原文地址: http://blog.csdn.net/gao_yu_long/article/details/51732181

  9. test知识

    内部测试SIT ——system integration testcase 用户测试UAT——user acceptance test SIT是集成测试UAT是验收测试从时间上看,UAT要在SIT后面 ...

  10. BZOJ 3243 向量内积

    Description 两个\(d\)维向量\(A=[a_{1},a_{2},...,a_{d}]\)与\(B=[b_{1},b_{2},...,b_{d}]\)的内积为其相对应维度的权值的乘积和,即 ...