Reputation: 49
So I am trying to list blobs contained in a virtual folder let's call it "VF"
I have tried many methods for example:
var storageAccount = CloudStorageAccount.Parse("...");
var blobClient = storageAccount.CreateCloudBlobClient();
var container = blobClient.GetContainerReference("Container_Name");
List<IListBlobItem> blobslist = container.ListBlobsSegmentedAsync("VF", true).ToList();
But I receive errors like:
Error: Argument 2: cannot convert from 'bool' to 'Microsoft.WindowsAzure.Storage.Blobl.BlobContinuationToken"}
I am trying to return file contents using an API, is this why I am receiving trouble and am using the incorrect methods?
Any help is greatly appreciated
Upvotes: 2
Views: 2215
Reputation: 16801
You need to implement the usage of BlobContinuationToken correctly.
Try it like this
if (CloudStorageAccount.TryParse(connectionString, out CloudStorageAccount storageAccount))
{
var context = new OperationContext();
var options = new BlobRequestOptions();
var cloudBlobClient = storageAccount.CreateCloudBlobClient();
var cloudBlobContainer = cloudBlobClient.GetContainerReference(blobContainerName);
BlobContinuationToken blobContinuationToken = null;
do
{
var results = await cloudBlobContainer.ListBlobsSegmentedAsync(null, true, BlobListingDetails.All,
null, blobContinuationToken, options, context);
blobContinuationToken = results.ContinuationToken;
foreach (var item in results.Results)
{
//do what you want with each blob
}
} while (blobContinuationToken != null);
}
Upvotes: 5