Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Delete folder(s) inside Azure Blob storage container

I have a container named "pictures", and have some folders named "Folder1", "Folder2" inside of it. So files of my blob will be addressed like this "http://optimus.blob.core.windows.net/pictures/Folder1/IMG123.png". Using the below C# code to delete the files inside folders,

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(*AzureConnectionString*);

CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

CloudBlobContainer container = blobClient.GetContainerReference("pictures");

var blobs = container.ListBlobs("Folder1", true);
foreach (var blob in blobs)
{
  container.GetBlockBlobReference(((CloudBlockBlob)blob).Name).DeleteIfExists();
}

after deleting all those files in "Folder1" it will be empty. I m trying to delete the empty folder, but can't get a way to do it. Is it possible to delete the folder(s)? Any help will be much appreciated. Thanks in advance.

like image 310
Maniarasu Avatar asked May 29 '15 07:05

Maniarasu


People also ask

What is soft delete in blob storage?

Blob soft delete protects an individual blob and its versions, snapshots, and metadata from accidental deletes or overwrites by maintaining the deleted data in the system for a specified period of time. During the retention period, you can restore the blob to its state at deletion.


2 Answers

For Azure Blob Storage, there isn't really a 'folder' object. 'Folders' are actually just blob name prefixes - the '/' character being used to separate 'folders' is a convention in blob naming, not a requirement. So, you don't have to worry about it - as long as there are no blobs with the "Folder1" prefix, then you're fine.

like image 107
Adam Sorrin - MSFT Avatar answered Oct 28 '22 02:10

Adam Sorrin - MSFT


Under any blob container, there is no real folder or directory exists. They are virtual directories to manage the folder structure for the blobs under container and if all the blobs with any virtual directory or folder are deleted then no such folder exists. It is all logical representation of folder structure and you can ignore the folders under any container.

But when it comes to container, you need to manually delete the container as well after deleting its blobs, if you want to clean up the whole container.

like image 31
Mahesh Jasti Avatar answered Oct 28 '22 04:10

Mahesh Jasti