public void Delete(TEntity entity) { if (EFContext.Entry <TEntity>(entity).State == EntityState.Detached) { EFSet.Attach(entity); } EFSet.Remove(entity); }
public void Update(TEntity entity) { if (EFContext.Entry <TEntity>(entity).State == EntityState.Detached) { EFSet.Attach(entity); } else { EFContext.Entry <TEntity>(entity).CurrentValues.SetValues(entity); } EFContext.Entry <TEntity>(entity).State = EntityState.Modified; }
public void InsertRange(IEnumerable <TEntity> entities, int batchSize = 100, bool autoCommitEnabled = false) { try { if (entities == null) { throw new ArgumentNullException("entities"); } if (entities.HasItems()) { if (batchSize <= 0) { // insert all in one step entities.Each(x => EFSet.Add(x)); } else { int i = 1; bool saved = false; foreach (var entity in entities) { EFSet.Add(entity); saved = false; if (i % batchSize == 0) { if (autoCommitEnabled) { EFContext.SaveChanges(); } i = 0; saved = true; } i++; } if (!saved) { if (autoCommitEnabled) { EFContext.SaveChanges(); } } } } } catch (DbEntityValidationException ex) { throw ex; } }
public void Insert(TEntity entity) { EFSet.Add(entity); }
public TEntity GetById(params object[] ids) { return(EFSet.Find(ids)); }