我正在上傳中的文件AZURE blob storage using c# library。如果我上傳帶有byte []的文件,它將計算MD5(在AZURE門戶中驗證 - 顯示CONTENT-MD5值)。CONTENT-MD5缺失AZURE portal
CloudBlockBlob blockBlob = GetUserProjectsBlob(blobName);
blockBlob.UploadFromByteArray(file, 0, file.Length);
我需要上傳一個大文件到AZURE。所以我使用PutBlock & PutBlockList方法..
string blockHash = GetMd5FromStream(new MemoryStream(file));
blockBlob.PutBlock(blockId, new MemoryStream(file, true), blockHash);
// To commit transaction
blockBlob.PutBlockList(blockIDsBase64);
但在上述情況下,CONTENT-MD5在AZURE門戶丟失。我也試過這個..
BlobRequestOptions opt = new BlobRequestOptions();
opt.StoreBlobContentMD5 = true;
UseTransactionalMD5 = true;
blockBlob.PutBlockList(blockIDsBase64, null, opt);
但是還是沒有運氣。有關如何解決此問題的任何想法?
是否有原因通過代碼實現?我只問,因爲AZCopy可能會更好地工作,如果你只是複製文件 –
@JasonH我使用它的WebApi。 –
我對另一個技術細節很感興趣 - 有沒有理由讓它逐塊上傳?爲什麼不是全blob上傳API('UploadFromFIle','UploadFromStream',...)爲您工作? – KFL