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

 1 public T AddEntity(T entity)
 2 {
 3     //EF4.0的写法
 4     添加实体
 5     //db.CreateObjectSet<T>().AddObject(entity);
 6     //EF5.0的写法
 7     db.Entry<T>(entity).State = EntityState.Added;
 8     //下面的写法统一
 9     db.SaveChanges();
10     return entity;
11 }
12 public bool UpdateEntity(T entity)
13 {
14     //EF4.0的写法
15     //db.CreateObjectSet<T>().Addach(entity);
16     //db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);
17     //EF5.0的写法
18    db.Set<T>().Attach(entity);
19    db.Entry<T>(entity).State = EntityState.Modified;
20    return db.SaveChanges() > 0;
21 }
22 public bool DeleteEntity(T entity)
23 {
24     //EF4.0的写法
25    //db.CreateObjectSet<T>().Addach(entity);
26    //db.ObjectStateManager.ChangeObjectState(entity, EntityState.Deleted);
27    //EF5.0的写法
28    db.Set<T>().Attach(entity);
29    db.Entry<T>(entity).State = EntityState.Deleted;
30    return db.SaveChanges() > 0;
31 }
32
33 public IQueryable<T> LoadEntities(Func<T, bool> whereLambda)
34 {
35     //EF4.0的写法
36     //return db.CreateObjectSet<T>().Where<T>(whereLambda).AsQueryable();
37     //EF5.0的写法
38     return db.Set<T>().Where<T>(whereLambda).AsQueryable();
39 }

执行SQL语句

1 //EF4.0的写法
2 //int ExcuteSql(string strSql, ObjectParameter[] parameters);
3 return EFContextFactory.GetCurrentDbContext().ExecuteFunction(strSql, parameters);
4 //EF5.0的写法
5  int ExcuteSql(string strSql, DbParameter[] parameters);
6 return DEFContextFactory.GetCurrentDbContext().ExecuteSqlCommand(strSql, parameters);
时间: 2024-10-14 01:50:32

EF4.0和EF5.0增删改查写法区别的相关文章

Yii2.0高级框架数据库增删改查的一些操作(转)

yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 ----------------------------------------------------------------------------------------------------- User::find()->all();    //返回所有用户数据:User::findOne($id);   //返回 主键 id=1  的一条数

Yii2.0高级框架数据库增删改查的一些操作

yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 ----------------------------------------------------------------------------------------------------- User::find()->all();    //返回所有用户数据:User::findOne($id);   //返回 主键 id=1  的一条数

primefaces4.0基本教程以及增删改查

最近试着用了用primefaces4.0,准备写一个基本的增删改查以及分页程序,但在写的过程中发现了很多问题,本想通过百度.谷歌解决,但无奈中文资料非常少,笔者在坑中不停的打滚,终于完成了一个有着基本功能的,还能看的过去的demo,想和大家一起分享一下,并希望能帮上和我一样陷入primefaces坑中的人.代码是仓促完成的,难免会有些缺点,还希望大家多多交流.http://www.mkyong.com/tutorials/jsf-2-0-tutorials/这个网站给了我非常大的帮助,在此表示严

NetCore2.0 RozarPage自动生成增删改查

原文链接:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/web-api-help-pages-using-swagger 上面的只是原文的上面的链接,右边的 没有链接,不能点击,不知道为什么.不过大家可以点击下面的下载PDF,下载后打开看就可以了 准备工作 VS2017需要15.3以后的版本,且安装完NetCore2.0 SDK Net Core 2.0 SDK下载链接:https://www.microsoft.com/net/c

mysql存储过程+事件统计mysql增删改查qps

/*统计mysql增删改查 qps 的sql脚本*/; DROP TABLE IF EXISTS  qpsInfo ; CREATE TABLE qpsInfo( id INT PRIMARY KEY AUTO_INCREMENT, `type` INT COMMENT "1 insert,2 delete,3 update,4 select", `count` INT COMMENT "更新的总数", `qps` INT COMMENT "10秒钟更新的

hibernate课程 初探单表映射3-5 hibernate增删改查

本节简介: 1 增删改查写法 2 查询load和查询get方法的区别 3 demo 1 增删改查写法 增加 session.save() 修改 session.update() 删除 session.delete() 查询 session.get()/session.load() 2 查询load和查询get方法的区别 a get 不考虑缓存情况下,get会在调用之后立即向数据库发送sql语句,返回持久化对象.load 是调用后返回代理对象,该代理对象只保存实体对象id,只有使用对象非主键属性才

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

EF4.0和EF5.0增删改查的写法区别 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>().AddObject(entity); //EF5.0的写法 db.Entry<T>(entity).State = EntityState.Added; //下面的写法统一 db.SaveChanges(); return entity; } public bool UpdateEntity(T

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

EF4.0和EF5.0增删改查的写法区别 (原文) public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T>().AddObject(entity); //EF5.0的写法 db.Entry<T>(entity).State = EntityState.Added; //下面的写法统一 db.SaveChanges(); return entity; } public bool UpdateEnti

MongoDB 3.0.6 安装 增删改查

下载 安装包MSI http://yunpan.cn/cmhHdTPkXZRM2  访问密码 9b6c 上边提供的是 MongoDB 3.0.6 64Bit 的安装包 安装 如果不想直接安装在C盘..就要选择自定义安装喽.. 就是选择全部安装和自定义的那一步..全部安装是默认安装C盘的.. 我这里是安装到 D:\Program Files\MongoDB\MongoDB 的.. 需要在 D:\Program Files\MongoDB 下新建 Log 文件夹..并在Log下建立 Log.txt