zoukankan      html  css  js  c++  java
  • 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);
  • 相关阅读:
    uva 1605 building for UN ——yhx
    uva 120 stacks of flapjacks ——yhx
    uva133-S.B.S.
    Uva10082 WERTYU -S.B.S.
    Quicksum-S.B.S.
    NOIP2014提高组 DAY1 -SilverN
    NOIP2013普及组 -SilverN
    uva 1354 Mobile Computing ——yhx
    UVa 11292 Dragon of Loowater
    UVa 839 Not so Mobile
  • 原文地址:https://www.cnblogs.com/webapi/p/5669049.html
Copyright © 2011-2022 走看看