UploadFromStream を呼び出すと、既定でファイルが上書きされます。ブロブがまだコンテナーにない場合にのみ、ブロブをアップロードするようにするにはどうすればよいですか?
CloudBlockBlob blockBlob = container.GetBlockBlobReference(blobName);
blockBlob.UploadFromStream(stream)
UploadFromStream を呼び出すと、既定でファイルが上書きされます。ブロブがまだコンテナーにない場合にのみ、ブロブをアップロードするようにするにはどうすればよいですか?
CloudBlockBlob blockBlob = container.GetBlockBlobReference(blobName);
blockBlob.UploadFromStream(stream)
BLOB のETagプロパティをチェックするようにコードにアクセス条件を追加します。ワイルドカードが許可されているため、この名前の BLOB に etag がない場合にのみアップロードを許可しますこのブロブ名が存在します)。
以下に詳述する StorageException が発生します。
CloudBlockBlob blockBlob = container.GetBlockBlobReference(blobName);
try {
blockBlob.UploadFromStream(stream, accessCondition: AccessCondition.GenerateIfNoneMatchCondition("*"));
} catch (StorageException ex) {
if (ex.RequestInformation.HttpStatusCode == (int)System.Net.HttpStatusCode.Conflict) {
// Handle duplicate blob condition
}
throw;
}