簡體   English   中英

如何使用新的 Azure.Storage.Blobs 命名空間僅獲取 blob 中的文件夾名稱

[英]How to get only folder name in blob using new Azure.Storage.Blobs namespace

快照

我想使用新的 SDK - Azure.Storage.Blobs 獲取容器下的所有文件夾名稱

您可能希望在BlobContainerClient class 中使用GetBlobsByHierarchy方法並將“/”作為前綴傳遞。 該方法將返回根級別的所有 blob 和文件夾。 一旦你得到它,你將只需要通過僅從結果中選擇IsPrefix屬性為 true 的項目來過濾掉 blob(或者你可以檢查Blob屬性是否為null )。

請嘗試以下操作:

        var connectionString = "DefaultEndpointsProtocol=https;AccountName=<account-name>;AccountKey=<account-key>;EndpointSuffix=core.windows.net;";
        var containerName = "test";
        var containerClient = new BlobContainerClient(connectionString, containerName);
        var blobFolders = containerClient.GetBlobsByHierarchy(BlobTraits.None, BlobStates.None, "/").Where(b => b.IsPrefix).ToList();
        for (var i=0; i<blobFolders.Count; i++)
        {
            Console.WriteLine("Folder Prefix: " + blobFolders[i].Prefix);
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM