public async Task <List <Channel> > GetBotsByChannelId(string id)
        {
            var query = _context.QueryAsync <Channel>(id);

            var botQuery = new Amazon.DynamoDBv2.DocumentModel.QueryOperationConfig
            {
                IndexName = "BotId-ChannelId-index"
            };

            botQuery.KeyExpression = new Amazon.DynamoDBv2.DocumentModel.Expression
            {
                ExpressionStatement       = "BotId = :botId",
                ExpressionAttributeValues = new Dictionary <string, Amazon.DynamoDBv2.DocumentModel.DynamoDBEntry>
                {
                    { ":botId", id }
                }
            };
            var botresult = _context.FromQueryAsync <Channel>(botQuery);

            var data = await botresult.GetRemainingAsync();

            var data2 = await query.GetRemainingAsync();

            return(data.Union(data2).ToList());
        }
Ejemplo n.º 2
0
        public Task <List <User> > GetUsersByClientIdAsync(string id)
        {
            var userQuery = new Amazon.DynamoDBv2.DocumentModel.QueryOperationConfig
            {
                IndexName = "ClientId-index"
            };

            userQuery.KeyExpression = new Amazon.DynamoDBv2.DocumentModel.Expression
            {
                ExpressionStatement       = "ClientId = :clientId",
                ExpressionAttributeValues = new Dictionary <string, Amazon.DynamoDBv2.DocumentModel.DynamoDBEntry>
                {
                    { ":clientId", id }
                }
            };
            var botresult = _context.FromQueryAsync <User>(userQuery);

            return(botresult.GetRemainingAsync());
        }