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 entity)

{

//EF4.0的写法

//db.CreateObjectSet<T>().Addach(entity);

//db.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);

//EF5.0的写法

db.Set<T>().Attach(entity);

db.Entry<T>(entity).State = EntityState.Modified;

return db.SaveChanges() > 0;

}

public bool DeleteEntity(T entity)

{

//EF4.0的写法

//db.CreateObjectSet<T>().Addach(entity);

//db.ObjectStateManager.ChangeObjectState(entity, EntityState.Deleted);

//EF5.0的写法

db.Set<T>().Attach(entity);

db.Entry<T>(entity).State = EntityState.Deleted;

return db.SaveChanges() > 0;

}

public IQueryable<T> LoadEntities(Func<T, bool> whereLambda)

{

//EF4.0的写法

//return
db.CreateObjectSet<T>().Where<T>(whereLambda).AsQueryable();

//EF5.0的写法

return db.Set<T>().Where<T>(whereLambda).AsQueryable();

}

执行SQL语句

//EF4.0的写法

//int
ExcuteSql(string strSql, ObjectParameter[] parameters);

return EFContextFactory.GetCurrentDbContext().ExecuteFunction(strSql, parameters);

//EF5.0的写法

int ExcuteSql(string strSql,
DbParameter[] parameters);

return DEFContextFactory.GetCurrentDbContext().ExecuteSqlCommand(strSql, parameters);

时间: 2024-08-11 03:37:31

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

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

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

利用LINQ to SQL 增删改查本地数据库

C#新人,博客园第一篇博文,希望大家多多指教. 最近趁项目空隙,学习了LINQ,其强大高效易读的数据操作方式令人印象深刻.特别是LINQ to SQL,让用户可以像操作内存对象一样操作SQL数据库.在阅读了<深入理解c#>和参考以下四篇博文后,自己摸索,完成了创建本地SQL数据库和数据表,VS连接数据库,到利用LINQ to SQL增删改查数据库表中信息. SQL服务器安装:http://www.downcc.com/tech/4135.html SQL数据库和数据表格创建:http://bl

[Android] SQLite数据库之增删改查基础操作

    在编程中常常会遇到数据库的操作,而Android系统内置了SQLite,它是一款轻型数据库,遵守事务ACID的关系型数据库管理系统,它占用的资源非常低,可以支持Windows/Linux/Unix等主流操作系统,同一时候可以跟非常多程序语言如C#.PHP.Java等相结合.以下先回想SQL的基本语句,再讲述Android的基本操作. 一. adb shell回想SQL语句     首先,我感觉自己整个大学印象最深的几门课就包含<数据库>,所以想先回想SQL增删改查的基本语句.而在And

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秒钟更新的

EF学习笔记——通用增删改查方案

http://blog.csdn.net/leftfist/article/details/25005307 我刚接触EF未久,还不知道它有什么强大之处,但看上去,EF提供了一般的增删改查功能.以往用过一些ORM方法,尽管有代码生成器,但代码量总的 来说比较多.这次采用EF,我就想,能不能尽量写出一些通用的方法,以后添加表.实体类,只需做很少的改动,就能拥有基本的增删改查功能呢? 方案如下: 1. 分为几个部分:BLL.DAL.Model.Interface.其中,EF生成的代码放在Model.