public async Task <IActionResult> SearchConfigurations([FromBody] SearchProvisioningConfigurationParameter parameter, CancellationToken cancellationToken)
        {
            var configurations = await _provisioningConfigurationRepository.SearchConfigurations(parameter, cancellationToken);

            return(new OkObjectResult(configurations));
        }
        public Task <SearchResult <ProvisioningConfigurationResult> > SearchConfigurations(SearchProvisioningConfigurationParameter parameter, CancellationToken cancellationToken)
        {
            IQueryable <ProvisioningConfiguration> result = _configurations.AsQueryable();

            if (MAPPING_PROVISIONING_TO_PROPERTYNAME.ContainsKey(parameter.OrderBy))
            {
                result = result.InvokeOrderBy(MAPPING_PROVISIONING_TO_PROPERTYNAME[parameter.OrderBy], parameter.Order);
            }

            int totalLength = result.Count();

            result = result.Skip(parameter.StartIndex).Take(parameter.Count);
            return(Task.FromResult(new SearchResult <ProvisioningConfigurationResult>
            {
                StartIndex = parameter.StartIndex,
                Count = parameter.Count,
                TotalLength = totalLength,
                Content = result.Select(r => ProvisioningConfigurationResult.ToDto(r)).ToList()
            }));
        }
        public async Task <SearchResult <ProvisioningConfigurationResult> > SearchConfigurations(SearchProvisioningConfigurationParameter parameter, CancellationToken cancellationToken)
        {
            IQueryable <ProvisioningConfiguration> result = _dbContext.ProvisioningConfigurations;

            if (MAPPING_PROVISIONING_TO_PROPERTYNAME.ContainsKey(parameter.OrderBy))
            {
                result = result.InvokeOrderBy(MAPPING_PROVISIONING_TO_PROPERTYNAME[parameter.OrderBy], parameter.Order);
            }

            int totalLength = await result.CountAsync(cancellationToken);

            result = result.Skip(parameter.StartIndex).Take(parameter.Count);
            ICollection <ProvisioningConfiguration> content = await result.ToListAsync(cancellationToken);

            return(new SearchResult <ProvisioningConfigurationResult>
            {
                StartIndex = parameter.StartIndex,
                Count = parameter.Count,
                TotalLength = totalLength,
                Content = content.Select(r => ProvisioningConfigurationResult.ToDto(r)).ToList()
            });
        }