public virtual async Task <TDomain> Update(TId id, TDomain newEntity, Action <TDomain, TDomain> preProcessAction, Action <TDomain> postProcessAction = null) { if (newEntity == null) { ThrowExceptionForNullInputEntity(); } var oldEntity = await GetById(id); preProcessAction?.Invoke(oldEntity, newEntity); var returnVal = await _entityDataService.Update(newEntity); postProcessAction?.Invoke(returnVal); return(returnVal); }
public virtual TDomain Update(TId id, TDomain newEntity, Action <TDomain, TDomain> preProcessAction, Action <TDomain> postProcessAction = null) { if (id.IsNullOrEmpty()) { ThrowExceptionForInvalidLookupIdParameter(); } if (newEntity == null) { ThrowExceptionForNullInputEntity(); } var oldEntity = GetById(id); preProcessAction?.Invoke(oldEntity, newEntity); var returnVal = EntityDataService.Update(newEntity); postProcessAction?.Invoke(returnVal); return(returnVal); }