public IActionResult GetAllAccessories([FromQuery] int pageNumber = 0, [FromQuery] int pageSize = 25) { _logger.LogInformation("Returning the list of accessories"); IEnumerable <AccessoryModel> accessoryModels; try { var tenantDomain = _currentTenant.DomainId; _logger.LogDebug($"Looking up all accessory data for data tenant: {tenantDomain})"); var accessories = _repo.Filter(Accessory.IsMatching(tenantDomain), out int total, pageNumber, pageSize); _logger.LogDebug("Pagination accessory models (count): " + total); accessoryModels = JobAssistantMapper.MapObjects <AccessoryModel>(accessories); var paginationMetadata = new { totalCount = total, pageSize, pageNumber, totalPages = total / pageSize }; Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(paginationMetadata)); } catch (Exception e) { _logger.LogError(1, e, "Failed to get all accessories in DB repository"); throw; } return(Ok(accessoryModels.AsEnumerable())); }