Exemplo n.º 1
0
        public async Task <IHttpActionResult> GetResources(int offset, int limit, bool viewed, int session)
        {
            var result = new DapperHelper.PageItems <object>();

            if (this.IsAuthenticated() || !viewed)
            {
                result = await DapperHelper.QueryPageItems <dynamic>("dbo.copGetResources",
                                                                     new
                {
                    UserId    = this.GetUserId(),
                    RowOffset = offset,
                    RowLimit  = limit,
                    Viewed    = viewed,
                    Session   = session,
                }
                                                                     );
            }

            return(Ok(result));
        }
Exemplo n.º 2
0
        private async Task <DapperHelper.PageItems <ResourceDto> > GetHistoryResources(int userId, string secondaryFilter, int offset = 0, int limit = 0)
        {
            var result = new DapperHelper.PageItems <ResourceDto>();

            var partitionKey    = KeyUtils.IntToKey(userId);
            var filterPartition = TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, partitionKey);
            var combinedFilter  = !String.IsNullOrEmpty(secondaryFilter) ? TableQuery.CombineFilters(filterPartition, TableOperators.And, secondaryFilter) : filterPartition;
            var query           = new TableQuery <LibraryHistoryEntity>().Where(combinedFilter);
            var entities        = await AzureStorageUtils.ExecuteQueryAsync(AzureStorageUtils.TableNames.LibraryHistory, query);

            result.TotalCount = entities.Count();

            if (entities.Any())
            {
                var historyItems = (limit != 0)
                        ? entities.Skip(offset).Take(limit)
                        : entities;

                result.Items = await HydrateHistoryItems(historyItems, userId);
            }

            return(result);
        }