我有一个Azure云blob存储帐户&我需要列举其内容。该帐户拥有大量数据和使用ListBlobs枚举其所有内容需要很长时间才能完成。
对于云容器和目录,我希望能够枚举根级项目。对于容器,我假设这将枚举根级blob:
cloudBlobContainer.ListBlobs(
String.Empty,
false,
BlobListingDetails.None,
null,
null))
有没有合理的方法来获取根级目录而不列出所有blob?我能想到的唯一方法就是荒谬:用一个blob前缀可能组合调用ListBlob。
答案 0 :(得分:1)
Zachary,遗憾的是Azure Blob存储中没有“目录”这样的东西。对象层次结构如下:
当您在blob名称中看到其他正斜杠时,它只是一个“虚拟”目录,而不是一个单独的目录实体。
https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-blobs/
答案 1 :(得分:0)
您可以通过使用.ListBlobs().OfType<your_chosen_blob_type>()
调用来获得目录内容的更详细列表。例如,一种Blob类型是CloudBlobDirectory
。查看此答案:https://stackoverflow.com/a/14440507/9654964。