コード例 #1
0
        public Task <ActionResult <SearchResponse> > SearchAsync(
            [FromQuery(Name = "q")] string query = null,
            [FromQuery] int skip           = 0,
            [FromQuery] int take           = 20,
            [FromQuery] bool prerelease    = false,
            [FromQuery] string semVerLevel = null,

            // These are unofficial parameters
            [FromQuery] string packageType      = null,
            [FromQuery] string framework        = null,
            CancellationToken cancellationToken = default)
        {
            var includeSemVer2 = semVerLevel == "2.0.0";

            var cachedTask = _searchService.SearchAsync(
                query ?? string.Empty,
                skip,
                take,
                prerelease,
                includeSemVer2,
                packageType,
                framework,
                cancellationToken);

            var nugetTask = _mirrorService.SearchAsync(
                query ?? string.Empty,
                skip,
                take,
                prerelease,
                includeSemVer2,
                packageType,
                framework,
                cancellationToken);

            return(Merge(cachedTask, nugetTask));
        }