当前位置:Gxlcms > 数据库问题 > MVC ---- EF4.0和EF5.0增删改查的写法区别及执行Sql的方法

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

时间:2021-07-01 10:21:17 帮助过:36人阅读

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

 

 

来源:http://blog.csdn.net/xjn030594/article/details/8946996

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

标签:tee   color   执行   parameter   执行sql   entry   upd   cti   context   

人气教程排行