Esempio n. 1
0
        public async Task <List <Player> > RetrieveByDraftId(string draftId)
        {
            var request = new QueryRequest
            {
                TableName = _tableName,
                KeyConditionExpression    = "DraftId = :v_DraftId",
                ExpressionAttributeValues = new Dictionary <string, AttributeValue> {
                    { ":v_DraftId", new AttributeValue {
                          S = draftId
                      } },
                },
            };

            var scanResponse = await _dynamoClient.QueryAsync(request);

            var players = new List <Player>();

            scanResponse.Items.ForEach(item =>
            {
                players.Add(
                    _playerMapper.Map(item)
                    );
            });

            return(players);
        }
        public async Task <Draft> Put(Draft draft)
        {
            var requestItem = _draftMapper.Map(draft);

            var ddbRequest = new PutItemRequest
            {
                TableName = _tableName,
                Item      = requestItem
            };

            await _dynamoClient.PutItemAsync(ddbRequest);

            return(draft);
        }
        public async Task <List <Pick> > RetrieveByDraftId(string draftId, bool descendingOrder, int?limit)
        {
            var request = new QueryRequest
            {
                TableName = _tableName,
                KeyConditionExpression    = "DraftId = :v_DraftId",
                ExpressionAttributeValues = new Dictionary <string, AttributeValue> {
                    { ":v_DraftId", new AttributeValue {
                          S = draftId
                      } },
                }
            };

            if (descendingOrder)
            {
                request.ScanIndexForward = false;
            }

            if (limit.HasValue)
            {
                request.Limit = limit.Value;
            }

            var scanResponse = await _dynamoClient.QueryAsync(request);

            var picks = new List <Pick>();

            scanResponse.Items.ForEach(item =>
            {
                picks.Add(
                    _pickMapper.Map(item)
                    );
            });

            return(picks);
        }