public virtual TEntity Update(TEntity entity) { entity.DataAlteracao = DateTime.Now; if (strategy != null) { strategy.Validate(entity, true); strategy.BeforeSave(entity, true); } _context.Set <TEntity>().Attach(entity); _context.Entry(entity).State = EntityState.Modified; _context.SaveChanges(); if (strategy != null) { strategy.AfterSave(entity, true); } return(entity); }