无法从存储帐户中的子目录获取 bloblist
Unable to get bloblist from a subdirectory in Storage Account
我想列出子目录中的所有 blob,例如存储帐户中的 images/nature
。我正在使用此 c# 代码来实现我的目标:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images/nature");
此代码对我不起作用。你有什么想法,我该如何做这份工作?
如果所有 blob 都在根文件夹中,则以下代码可以正常工作:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images");
请尝试以下代码:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images");
var blobs = container.ListBlobs("nature", true);
这应该列出 "nature" 文件夹内的 blob 及其下的所有文件夹。
基本上问题出在以下代码行:
CloudBlobContainer container = blobClient.GetContainerReference(@"images/nature");
Azure Blob 存储基本上具有 2 级层次结构 - 容器和 blob。那里的文件夹是虚拟的,本质上是您在 blob 名称中添加的前缀。
我在代码中所做的是列出名称以前缀开头的容器中的 blob(在您的示例中为 "nature")。
我想列出子目录中的所有 blob,例如存储帐户中的 images/nature
。我正在使用此 c# 代码来实现我的目标:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images/nature");
此代码对我不起作用。你有什么想法,我该如何做这份工作?
如果所有 blob 都在根文件夹中,则以下代码可以正常工作:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images");
请尝试以下代码:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images");
var blobs = container.ListBlobs("nature", true);
这应该列出 "nature" 文件夹内的 blob 及其下的所有文件夹。
基本上问题出在以下代码行:
CloudBlobContainer container = blobClient.GetContainerReference(@"images/nature");
Azure Blob 存储基本上具有 2 级层次结构 - 容器和 blob。那里的文件夹是虚拟的,本质上是您在 blob 名称中添加的前缀。
我在代码中所做的是列出名称以前缀开头的容器中的 blob(在您的示例中为 "nature")。