How do I list blobs contained in a directory Azure
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
c# azure-storage-blobs virtual-directory
add a comment |
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
c# azure-storage-blobs virtual-directory
add a comment |
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
c# azure-storage-blobs virtual-directory
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
c# azure-storage-blobs virtual-directory
c# azure-storage-blobs virtual-directory
edited Nov 13 '18 at 11:35
Uwe Keim
27.4k31128210
27.4k31128210
asked Nov 13 '18 at 11:20
Reece JeffreyReece Jeffrey
134
134
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
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);
Hey! Thanks for the reply, I think I have the connectionString wrong as its returning false, silly question but what should my connectionString look like? I may be using the incorrect format
– Reece Jeffrey
Nov 13 '18 at 12:15
I am using "@DefaultEndpointsProtocol = https; AccountName =azure email; AccountKey =Password...Not sure if password or generated key; EndpointSuffix = core.windows.net" Edited: Clarifying
– Reece Jeffrey
Nov 13 '18 at 12:16
@ReeceJeffrey remove the spaces in the string. Apart from that it looks correct
– Marcus Höglund
Nov 13 '18 at 12:19
It seems It is still returning false
– Reece Jeffrey
Nov 13 '18 at 12:22
@ReeceJeffrey try to paste in the complete connection string found in under your "storage account--> access keys --> key1 --> connection string" in the portal. just verify that you are able to connect with that first, then break it to pieces
– Marcus Höglund
Nov 13 '18 at 12:26
|
show 7 more comments
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53279914%2fhow-do-i-list-blobs-contained-in-a-directory-azure%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
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);
Hey! Thanks for the reply, I think I have the connectionString wrong as its returning false, silly question but what should my connectionString look like? I may be using the incorrect format
– Reece Jeffrey
Nov 13 '18 at 12:15
I am using "@DefaultEndpointsProtocol = https; AccountName =azure email; AccountKey =Password...Not sure if password or generated key; EndpointSuffix = core.windows.net" Edited: Clarifying
– Reece Jeffrey
Nov 13 '18 at 12:16
@ReeceJeffrey remove the spaces in the string. Apart from that it looks correct
– Marcus Höglund
Nov 13 '18 at 12:19
It seems It is still returning false
– Reece Jeffrey
Nov 13 '18 at 12:22
@ReeceJeffrey try to paste in the complete connection string found in under your "storage account--> access keys --> key1 --> connection string" in the portal. just verify that you are able to connect with that first, then break it to pieces
– Marcus Höglund
Nov 13 '18 at 12:26
|
show 7 more comments
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);
Hey! Thanks for the reply, I think I have the connectionString wrong as its returning false, silly question but what should my connectionString look like? I may be using the incorrect format
– Reece Jeffrey
Nov 13 '18 at 12:15
I am using "@DefaultEndpointsProtocol = https; AccountName =azure email; AccountKey =Password...Not sure if password or generated key; EndpointSuffix = core.windows.net" Edited: Clarifying
– Reece Jeffrey
Nov 13 '18 at 12:16
@ReeceJeffrey remove the spaces in the string. Apart from that it looks correct
– Marcus Höglund
Nov 13 '18 at 12:19
It seems It is still returning false
– Reece Jeffrey
Nov 13 '18 at 12:22
@ReeceJeffrey try to paste in the complete connection string found in under your "storage account--> access keys --> key1 --> connection string" in the portal. just verify that you are able to connect with that first, then break it to pieces
– Marcus Höglund
Nov 13 '18 at 12:26
|
show 7 more comments
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);
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);
answered Nov 13 '18 at 11:30
Marcus HöglundMarcus Höglund
9,67852545
9,67852545
Hey! Thanks for the reply, I think I have the connectionString wrong as its returning false, silly question but what should my connectionString look like? I may be using the incorrect format
– Reece Jeffrey
Nov 13 '18 at 12:15
I am using "@DefaultEndpointsProtocol = https; AccountName =azure email; AccountKey =Password...Not sure if password or generated key; EndpointSuffix = core.windows.net" Edited: Clarifying
– Reece Jeffrey
Nov 13 '18 at 12:16
@ReeceJeffrey remove the spaces in the string. Apart from that it looks correct
– Marcus Höglund
Nov 13 '18 at 12:19
It seems It is still returning false
– Reece Jeffrey
Nov 13 '18 at 12:22
@ReeceJeffrey try to paste in the complete connection string found in under your "storage account--> access keys --> key1 --> connection string" in the portal. just verify that you are able to connect with that first, then break it to pieces
– Marcus Höglund
Nov 13 '18 at 12:26
|
show 7 more comments
Hey! Thanks for the reply, I think I have the connectionString wrong as its returning false, silly question but what should my connectionString look like? I may be using the incorrect format
– Reece Jeffrey
Nov 13 '18 at 12:15
I am using "@DefaultEndpointsProtocol = https; AccountName =azure email; AccountKey =Password...Not sure if password or generated key; EndpointSuffix = core.windows.net" Edited: Clarifying
– Reece Jeffrey
Nov 13 '18 at 12:16
@ReeceJeffrey remove the spaces in the string. Apart from that it looks correct
– Marcus Höglund
Nov 13 '18 at 12:19
It seems It is still returning false
– Reece Jeffrey
Nov 13 '18 at 12:22
@ReeceJeffrey try to paste in the complete connection string found in under your "storage account--> access keys --> key1 --> connection string" in the portal. just verify that you are able to connect with that first, then break it to pieces
– Marcus Höglund
Nov 13 '18 at 12:26
Hey! Thanks for the reply, I think I have the connectionString wrong as its returning false, silly question but what should my connectionString look like? I may be using the incorrect format
– Reece Jeffrey
Nov 13 '18 at 12:15
Hey! Thanks for the reply, I think I have the connectionString wrong as its returning false, silly question but what should my connectionString look like? I may be using the incorrect format
– Reece Jeffrey
Nov 13 '18 at 12:15
I am using "@DefaultEndpointsProtocol = https; AccountName =azure email; AccountKey =Password...Not sure if password or generated key; EndpointSuffix = core.windows.net" Edited: Clarifying
– Reece Jeffrey
Nov 13 '18 at 12:16
I am using "@DefaultEndpointsProtocol = https; AccountName =azure email; AccountKey =Password...Not sure if password or generated key; EndpointSuffix = core.windows.net" Edited: Clarifying
– Reece Jeffrey
Nov 13 '18 at 12:16
@ReeceJeffrey remove the spaces in the string. Apart from that it looks correct
– Marcus Höglund
Nov 13 '18 at 12:19
@ReeceJeffrey remove the spaces in the string. Apart from that it looks correct
– Marcus Höglund
Nov 13 '18 at 12:19
It seems It is still returning false
– Reece Jeffrey
Nov 13 '18 at 12:22
It seems It is still returning false
– Reece Jeffrey
Nov 13 '18 at 12:22
@ReeceJeffrey try to paste in the complete connection string found in under your "storage account--> access keys --> key1 --> connection string" in the portal. just verify that you are able to connect with that first, then break it to pieces
– Marcus Höglund
Nov 13 '18 at 12:26
@ReeceJeffrey try to paste in the complete connection string found in under your "storage account--> access keys --> key1 --> connection string" in the portal. just verify that you are able to connect with that first, then break it to pieces
– Marcus Höglund
Nov 13 '18 at 12:26
|
show 7 more comments
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53279914%2fhow-do-i-list-blobs-contained-in-a-directory-azure%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown