public Task <PaginatedTransactionHistory> GetByDatePaginatedAsync(DateTime fromDate, DateTime toDate, int currentPage, int pageSize) { if (fromDate >= toDate) { throw new InvalidOperationException($"{nameof(fromDate)} must be earlier than {nameof(toDate)}"); } var(skip, take) = ValidateAndCalculateSkipAndTake(currentPage, pageSize); return(_transactionHistoryRepository.GetByDatePaginatedAsync(fromDate, toDate, skip, take)); }