Beispiel #1
0
        private static PassThroughQueryTestInput CreateInput(
            string description,
            string query,
            bool expectedPassThrough,
            string partitionKeyPath,
            string partitionKeyValue)
        {
            PartitionKeyBuilder pkBuilder = new PartitionKeyBuilder();

            pkBuilder.Add(partitionKeyValue);

            return(CreateInput(description, query, expectedPassThrough, partitionKeyPath, pkBuilder.Build()));
        }
Beispiel #2
0
        public async Task ReadManyMultiplePK()
        {
            IReadOnlyList <string> pkPaths = new List <string> {
                "/pk", "/description"
            };
            ContainerProperties containerSettings = new ContainerProperties(id: Guid.NewGuid().ToString(), partitionKeyPaths: pkPaths);
            Container           container         = await this.database.CreateContainerAsync(this.containerSettings);

            for (int i = 0; i < 5; i++)
            {
                ToDoActivity item = ToDoActivity.CreateRandomToDoActivity();
                item.pk          = "pk" + i.ToString();
                item.id          = i.ToString();
                item.description = "description" + i;
                ItemResponse <ToDoActivity> itemResponse = await container.CreateItemAsync(item);

                Assert.AreEqual(HttpStatusCode.Created, itemResponse.StatusCode);
            }

            List <(string, PartitionKey)> itemList = new List <(string, PartitionKey)>();

            for (int i = 0; i < 5; i++)
            {
                PartitionKey partitionKey = new PartitionKeyBuilder()
                                            .Add("pk" + i)
                                            .Add("description" + i)
                                            .Build();

                itemList.Add((i.ToString(), partitionKey));
            }

            FeedResponse <ToDoActivity> feedResponse = await container.ReadManyItemsAsync <ToDoActivity>(itemList);

            Assert.IsNotNull(feedResponse);
            Assert.AreEqual(feedResponse.Count, 5);
            Assert.IsTrue(feedResponse.Headers.RequestCharge > 0);
            Assert.IsNotNull(feedResponse.Diagnostics);
        }