Example #1
0
        public IActionResult GetAll([FromQuery] InferenceSearchInputModel filter, [FromQuery] int?perPage, [FromQuery] int page = 1, bool withTotal = false)
        {
            var data = inferenceHistoryRepository.GetAllIncludeDataSetWithOrdering();

            data = Search(data, filter);

            //未指定、あるいは1000件以上であれば、1000件に指定
            int pageCount = (perPage.HasValue && perPage.Value < 1000) ? perPage.Value : 1000;

            data = data.Paging(page, pageCount);

            if (withTotal)
            {
                int total = GetTotalCount(filter);
                SetTotalCountToHeader(total);
            }

            //SQLが多重実行されることを防ぐため、ToListで即時発行させたうえで、結果を生成
            return(JsonOK(data.ToList().Select(history => GetUpdatedIndexOutputModelAsync(history).Result)));
        }