列出Azure Blob存储中的文件

时间:2015-02-16 20:15:30

标签: azure azure-storage azure-storage-blobs

我正在尝试列出我的blob中的所有jpg文件。当我使用这段代码时

CloudStorageAccount storageAccount1 = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("ConnString"));
CloudBlobContainer container1 = blobClient.GetContainerReference(imageFolder);
var blobs = container1.ListBlobs();

列出该特定blob中的所有文件

我试图修改上面的代码,但修改后的代码没有列出任何内容。

CloudStorageAccount storageAccount1 = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("ConnString"));
CloudBlobContainer container1 = blobClient.GetContainerReference(imageFolder);
var blobs = container1.ListBlobs().OfType<CloudBlobContainer>().OrderByDescending(b => b.Name).Where(b => b.Name.EndsWith(".jpg"));

1 个答案:

答案 0 :(得分:3)

正好关闭这个问题:问题是查询代码无意中检查容器中的容器,而不是容器中的 blobs

CloudStorageAccount storageAccount1 = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("ConnString"));
CloudBlobContainer container1 = blobClient.GetContainerReference(imageFolder);
var blobs = container1.ListBlobs().OfType<CloudBlobContainer>().OrderByDescending(b => b.Name).Where(b => b.Name.EndsWith(".jpg"));

最后一行应更改为:

var blobs = container1.ListBlobs().OfType<CloudBlockBlob>()...