EF 5.0 和 EF4.0 语法区别
- // 实现对数据库的添加功能,添加实现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 语法区别的更多相关文章
- mvc4.0添加EF4.0时发生编译时错误
解决此问题是因为MVC4.0默认未添加EF4.0的引用,EF4.0引用的是System.Data.Entity.dll, Version=4.0.0.0, 解决办法: 在web.config文件sys ...
- EF4.0和EF5.0增删改查的写法区别及执行Sql的方法
EF4.0和EF5.0增删改查的写法区别 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>(). ...
- EF5.0区别于EF4.0的增删改写法
// 实现对数据库的添加功能,添加实现EF框架的引用 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T& ...
- MVC ---- EF4.0和EF5.0增删改查的写法区别及执行Sql的方法
EF4.0和EF5.0增删改查的写法区别 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>(). ...
- EF4.0和EF5.0增删改查写法区别
1 public T AddEntity(T entity) 2 { 3 //EF4.0的写法 4 添加实体 5 //db.CreateObjectSet<T>().AddObject(e ...
- EF5.0区别于EF4.0的crud区别
public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>().AddObject(entity); // ...
- GLSL ES 3.0 和 2.0 的区别
GLSL ES 3.0 和 2.0 的区别 语法区别 attribute和varying. 取而代之的是 in和out 头文件多了个#version 300 es 纹理 texture2D 和 tex ...
- 计算机网络【9】—— HTTP1.0和HTTP1.1的区别及常见状态码
一.HTTP1.0与HTTP1.1的区别 1.HTTP 1.1支持长连接(PersistentConnection)和请求的流水线(Pipelining)处理 HTTP 1.0规定浏览器与服务器只保持 ...
- bootstrap2.0与3.0的区别
在阅读这篇bootstrap2.0与3.0的区别的文章之前,大家一定要先了解什么是响应式网站设计?推荐大家看看这篇"教你快速了解响应式网站设计" . 我觉得bootstrap的可视 ...
随机推荐
- Oauth认证简介
Oauth是什么: 1.Oauth是一种安全认证的协议: 2.Oauth为用户资源的授权提供了一个安全的.开放而又简易的标准: 3.Oauth的授权不会使第三方触及到用户的账号信息(用户名和密码). ...
- mysql更新密码为空
1.进入命令行 mysql -u root -p 'oldpassword'; 2 修改root用户的密码:mysql> update mysql.user set password=PASSW ...
- bootstrap学习--模态弹出框modals轮子
1.点击按钮型 <link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css"> ...
- dedecms织梦导航栏二级菜单的实现方法
dede导航下拉菜单,一级栏目增加二级下拉菜单 使用dedecms5.6——5.7 将这段代码贴到templets\default\head.htm文件里<!-- //二级子类下拉菜单,考虑 ...
- bootstrap日期时间插件datetimepicker
<!DOCTYPE HTML> 02 <html> 03 <head> 04 <link href="http://netdna.boo ...
- PHP面向对象(OOP):把对象串行化serialize()方法,__sleep()方法,__wakeup()方法
有时候需要把一个对象在网络上传输,为了方便传输,可以把整个对象转化为二进制串,等到达另一端时,再还原为原来的对象,这个过程称之为串行化(也叫序列化), 就像我们现在想把一辆汽车通过轮船运到美国去,因为 ...
- find_cmd函数分析
一.概述 1.函数位置 common/command.c 2.函数功能分析 解析命令的关键环节是如何根据输入命令查找对应命令的信息,从而跳转到对应命令的函数处执行程序.这必然涉及到如何存放命令的详细信 ...
- 通过GetManifestResourceStream加载文件出现错误提示“null值”对于“stream”无效[转]
本文解决了我的问题,收藏一下. 原文地址:http://blog.sina.com.cn/s/blog_a67799f601010atz.html 在做Mobile开发时,需要引入图片,用到了这个方法 ...
- A Statistical View of Deep Learning (III): Memory and Kernels
A Statistical View of Deep Learning (III): Memory and Kernels Memory, the ways in which we remember ...
- 怎样找到native speaker的感觉