Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Azure Blob存储中创建并上载到特定文件夹_C#_Azure_Azure Storage Blobs_Azure Blob Storage - Fatal编程技术网

C# 在Azure Blob存储中创建并上载到特定文件夹

C# 在Azure Blob存储中创建并上载到特定文件夹,c#,azure,azure-storage-blobs,azure-blob-storage,C#,Azure,Azure Storage Blobs,Azure Blob Storage,我试图通过C#代码将文件上传到Azure blob存储,但是,我需要一个特定的目录树。到目前为止,我的代码是: BlobServiceClient bSC = new BlobServiceClient(MY_CONN_STRING); string filename = $"test/files/file.json"; string localFilePath = Path.Combine(filename); var containerClient = bSC.GetB

我试图通过C#代码将文件上传到Azure blob存储,但是,我需要一个特定的目录树。到目前为止,我的代码是:

BlobServiceClient bSC = new BlobServiceClient(MY_CONN_STRING);

string filename = $"test/files/file.json";
string localFilePath = Path.Combine(filename);
var containerClient = bSC.GetBlobContainerClient("mycontainer");
BlobClient blobClient = containerClient.GetBlobClient(filename);

using FileStream uploadFileStream = File.OpenRead(localFilePath);
await blobClient.UploadAsync(uploadFileStream, true);
uploadFileStream.Close();
我还有另外一段代码,它在
test/files/file.json
中生成一个文件。但是,在Azure blob存储中,我希望将其上载到我选择的目录树。示例:
/mycontainer/Events/production/file.json,同时需要创建
事件。

现在,它正在我的
test/files/file.json项目中重新创建树结构,
GetBlobClient
中的字符串参数负责文件上载后的“路径”,它不应与本地系统中的文件名完全相同

BlobClient blobClient = containerClient.GetBlobClient("mycontainer/Events/production/file.json");

要为OP添加的一条重要信息是,Azure Blob存储使用一个平面范例来表示Blob,您可以让它“看起来”像是分层的,但您应该知道这是一个抽象的谎言。更多信息,请参阅。这是我一直在寻找的,但我并不理解。非常感谢。