我在Azure中有一个名为“ 870”的blob文件夹,其中包含各种文件夹(请参见下面的快照):
Blob图片:
我只是尝试仅删除图像,而不删除其他文件夹。但是我不能。我有一个代码,但是它删除了所有内容(请参见下面的快照):
我只想删除“ 870”文件夹中的图像(.svg),而不是其他文件夹数据以及文件夹。
答案 0 :(得分:0)
如果您只想删除870文件夹中的图像文件,则应将false
方法的参数设置为ListBlobs()
,它对我有用。
foreach (IListBlobItem blob in cloudBlobContainer.GetDirectoryReference("your folder path").ListBlobs(false))
{
if (blob.GetType() == typeof(CloudBlockBlob))
{
((CloudBlockBlob)blob).DeleteIfExists();
}
}
如果将true
方法设置为ListBlobs()
,它也会列出870子文件夹中的文件。然后导致子文件夹和其中的文件被删除(因为您在天蓝色的Blob存储中不能有一个空文件夹。
您还可以参考有关参数useFlatBlobListing
的官方doc:
一个布尔值,它指定是按虚拟目录列出Blob,还是按虚拟目录分层列出Blob。