public async Task <EntityResponse> CreateAsync(CreateEntityCommand createCommand) { _createCommandValidator.ValidateAndThrowIfFailed(createCommand); var entity = _mapper.Map <CreateEntityCommand, Entity>(createCommand); var createdEntiy = await _entitiesRepository.SaveAsync(entity); return(_mapper.Map <Entity, EntityResponse>(createdEntiy)); }
public async Task <EntityResponse> UpdateAsync(UpdateEntityCommand updateCommand) { var entityId = ObjectIdentifierParser.ValidateAndParse(updateCommand.Id); var existingEntity = await _entitiesRepository.GetAsync(entityId); if (existingEntity == null) { return(null); } _updateCommandValidator.ValidateAndThrowIfFailed(updateCommand); var entity = _mapper.Map <UpdateEntityCommand, Entity>(updateCommand); var updatedEntity = await _entitiesRepository.SaveAsync(entity); return(_mapper.Map <Entity, EntityResponse>(updatedEntity)); }