如何删除Azure中文件夹中的blob文件[关闭]

问题描述 投票:-2回答:1

我在Azure中有一个名为“870”的blob文件夹,其中包含各种文件夹(请参阅下面的快照):

Blob图片:

Blob Pics FYI

我只想删除图像,而不是其他文件夹。但我不能。我有一个代码,但它删除了所有内容(见下面的快照):

My Code

我想只删除“870”文件夹中的图像(.svg),而不删除其他文件夹数据以及文件夹。

asp.net-mvc azure-storage azure-storage-blobs
1个回答
0
投票

如果您只想删除870文件夹中的图像文件,则应将参数设置为false for ListBlobs()方法,它可以在我这边工作。

            foreach (IListBlobItem blob in cloudBlobContainer.GetDirectoryReference("your folder path").ListBlobs(false))
            {

                if (blob.GetType() == typeof(CloudBlockBlob))
                {
                    ((CloudBlockBlob)blob).DeleteIfExists();                    
                }
            }

如果你为true方法设置ListBlobs(),它还会列出870子文件夹中的文件。然后导致其中的子文件夹和文件被删除(因为你不能在azure blob存储中有一个空文件夹)。

你也可以参考这个官方doc关于参数useFlatBlobListing

一个布尔值,指定是否在平面列表中列出blob,或者是否按虚拟目录分层列出blob。

© www.soinside.com 2019 - 2024. All rights reserved.