示例#1
0
        public void CloudBlobClientListManyContainersSegmentedWithPrefix()
        {
            string          name           = GetRandomContainerName();
            List <string>   containerNames = new List <string>();
            CloudBlobClient blobClient     = GenerateCloudBlobClient();

            for (int i = 0; i < 5050; i++)
            {
                string containerName = name + i.ToString();
                containerNames.Add(containerName);
                blobClient.GetContainerReference(containerName).Create();
            }

            List <string>         listedContainerNames = new List <string>();
            BlobContinuationToken token = null;

            do
            {
                ContainerResultSegment resultSegment = blobClient.ListContainersSegmented(name, ContainerListingDetails.None, 1, token);
                token = resultSegment.ContinuationToken;

                int count = 0;
                foreach (CloudBlobContainer container in resultSegment.Results)
                {
                    count++;
                    listedContainerNames.Add(container.Name);
                }
                Assert.IsTrue(count <= 1);
            }while (token != null);

            Assert.AreEqual(containerNames.Count, listedContainerNames.Count);
            foreach (string containerName in listedContainerNames)
            {
                Assert.IsTrue(containerNames.Remove(containerName));
                blobClient.GetContainerReference(containerName).Delete();
            }
        }