private void ChangeStateToModifiedIfApplicable(T entity) { var entry = _context.Entry(entity); if (entry.State == EntityState.Detached) { // Entity was detached before or was explicitly constructed. // This unfortunately sets all properties to modified. entry.State = EntityState.Modified; } else if (entry.State == EntityState.Unchanged) { // We simply do nothing here, because it is ensured now that DetectChanges() // gets implicitly called prior SaveChanges(). } }
public async Task <bool> DeleteAsync(T t) { _dbContext.Set <T>().Attach(t); _dbContext.Entry <T>(t).State = EntityState.Deleted; return(await _dbContext.SaveChangesAsync() > 0); }