示例#1
0
        public async Task <IHttpActionResult> GetArtifactsInCollectionAsync(int id, [FromUri] Pagination pagination)
        {
            pagination.Validate(true);

            var userId = Session.UserId;

            pagination        = pagination ?? new Pagination();
            pagination.Offset = pagination.Offset ?? DefaultPaginationOffset;
            pagination.Limit  = pagination.Limit
                                ?? await _artifactListService.GetPaginationLimitAsync(id, userId)
                                ?? DefaultPaginationLimit;

            var artifacts = await _collectionsService.GetArtifactsInCollectionAsync(id, pagination, userId);

            artifacts.Pagination = pagination;

            await _artifactListService.SavePaginationLimitAsync(id, pagination.Limit, userId);

            return(Ok(artifacts));
        }