我知道我们可以使用以下文件将文件上传到Azure Blob存储:
CloudBlockBlob cloudBlockBlob = fileContainer.GetBlockBlobReference(fileName);
await cloudBlockBlob.UploadFromFileAsync(fileFullPath);
我已经在容器中创建了一些文件夹。我试了几次,但文件总是上传到文件夹之外。
我们如何将文件上传到Blob存储中的特定文件夹中?
答案 0 :(得分:4)
我想您必须首先获得正确的引用(您需要在GetBlockBlobReference中包含文件的完整路径),如:
CloudBlockBlob cloudBlockBlob = fileContainer.GetBlockBlobReference($"yourfoldername/{fileName}");
重要的一点是您不需要创建文件夹,它会根据GetBlockBlobReference中的路径自动为您创建文件夹。
答案 1 :(得分:1)
实际上,Azure Blob存储中没有真正的文件夹,它只是一个虚拟概念。换句话说,Azure Blob存储仅具有简单的2级“容器-blob”结构,所谓的“文件夹”只是现有blob名称的前缀。
例如,如果有一个名为a/b/c.jpg
的blob。 a
和b
是虚拟文件夹名称,您不能直接创建或删除它们,它们只是由于斑点a/b/c.jpg
而存在。