博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EF4.0和EF5.0增删改查的写法区别及执行Sql的方法
阅读量:4880 次
发布时间:2019-06-11

本文共 1372 字,大约阅读时间需要 4 分钟。

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的写法s
//int ExcuteSql(string strSql, ObjectParameter[] parameters);
return EFContextFactory.GetCurrentDbContext().ExecuteFunction(strSql, parameters);
//EF5.0的写法
 int ExcuteSql(string strSql, DbParameter[] parameters);
return DEFContextFactory.GetCurrentDbContext().Database.ExecuteSqlCommand(strSql, parameters);

转载于:https://www.cnblogs.com/SamllBaby/p/4424942.html

你可能感兴趣的文章
Ubuntu下搜狗输入法乱码
查看>>
计算机网络●通信协议
查看>>
在EditPlus里配置编译和运行java代码的方法
查看>>
gson所需jar包
查看>>
最干净的pyinstaller打包成exe应用程序方法
查看>>
Python中的数据类型
查看>>
讲给普通人听的分布式数据存储【转载】
查看>>
关于最短路
查看>>
Hbase记录-zookeeper部署
查看>>
Python pexpect出现错误‘module have no attribute "spawn" 解决办法
查看>>
vs2008 C# 怎么调试C++ dll[转]
查看>>
PHP的魔术方法
查看>>
警惕麦咖啡的"缓冲区溢出保护"引起的ASP.NET 中 System.OutOfMemoryException 的错误...
查看>>
optimizer_dynamic_sampling
查看>>
HTML(WEB)开发day05
查看>>
序列合并求前K小项 POJ2442
查看>>
unity点选构建Mesh并保存OBJ
查看>>
python kmeans实战 - 单机一层聚类(小玩具哦),下次再弄个分布式多次聚类
查看>>
Java主要有那几种文件类型?各自的作用是什么?
查看>>
我的第一个python web开发框架(29)——定制ORM(五)
查看>>