同时在Azure Blob存储中创建具有相同名称的Blob

Cre*_*tor 6 c# blob azure

我有任务同时将一些图像加载到blob存储中.blob的名称定义为blob的md5.不同的线程可能会尝试从不同的位置加载相同的文件.

现在我需要知道如何阻止其他线程加载相同的文件,如果首先已经尝试上传这样的blob.

Esb*_*sen 5

您可以通过使用乐观并发来租用它.基本设置一个访问条件,说明此blob将与具有此名称的blob的所有etags不同.如果确实存在带有某个etag的blob,则第二次上载将失败.

var access = AccessCondition.GenerateIfNoneMatchCondition("*");
await blobRef.UploadFromStreamAsync(stream, access, null, null);
Run Code Online (Sandbox Code Playgroud)