How do I list blobs contained in a directory Azure










0















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










share|improve this question




























    0















    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










    share|improve this question


























      0












      0








      0








      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










      share|improve this question
















      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






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      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






















          1 Answer
          1






          active

          oldest

          votes


















          0














          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);






          share|improve this answer























          • 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










          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
          );



          );













          draft saved

          draft discarded


















          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









          0














          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);






          share|improve this answer























          • 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















          0














          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);






          share|improve this answer























          • 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













          0












          0








          0







          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);






          share|improve this answer













          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);







          share|improve this answer












          share|improve this answer



          share|improve this answer










          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

















          • 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

















          draft saved

          draft discarded
















































          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.




          draft saved


          draft discarded














          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





















































          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







          Popular posts from this blog

          Top Tejano songwriter Luis Silva dead of heart attack at 64

          政党

          天津地下鉄3号線