这就是我上传到azure页面blob存储的方式
var memoryStream = new MemoryStream(range, offsetToTransfer, sizeToTransfer, false, false);
pageBlob.WritePages(memoryStream, vhdOffset + offsetToTransfer, null);
Console.WriteLine("Range ~" + Megabytes(offsetToTransfer + vhdOffset) + " + " + PrintSize(sizeToTransfer));`
Azure建议我使用此library上传等。
如何将第二个参数(它的偏移量)vhdOffset + offsetToTransfer
设置为UploadAsync
?我的意思是如何指定我想写的position
?
var memoryStream = new MemoryStream(range, offsetToTransfer, sizeToTransfer, false, false);
TransferManager.UploadAsync(memoryStream, pageBlob);
答案 0 :(得分:0)
如果您希望编写带偏移量的页面,可以使用此处记录的CloudPageBlob.WritePagesAsync API。 https://msdn.microsoft.com/en-us/library/microsoft.windowsazure.storage.blob.cloudpageblob.writepagesasync(v=azure.10).aspx
这里有一个基于CloudPageBlob.WritePages API的完整示例。
以下代码:
MemoryStream memoryStream = new MemoryStream(range,
offsetToTransfer, sizeToTransfer, false, false);
pageBlob.WritePages(memoryStream, vhdOffset + offsetToTransfer);
允许您编写最多4MB的连续页面集,并且写入的偏移量必须从512字节边界开始(startingOffset%512 == 0),并以512边界结束 - 1.
希望这有帮助
祝你好运
斯特凡