public IActionResult Delete(int id) =>
 _commandRepo.Delete(id)
 .Map(_ => OkNoContent())
 .Reduce(_ => NotFound(), error => error is RecordNotFound, x => _logger.LogError(x.ToString()))
 .Reduce(_ => InternalServerError(), x => _logger.LogError(x.ToString()));