我想将 blob 下载为字节数组,但上面提到了错误。我的代码如下
Dim fullFileBytes() As Byte = {}
Dim objAzureStorage As New AzureCloudStorage
Dim fullImageBlob As Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob = objAzureStorage.CloudContainer.GetBlockBlobReference(row(0))
fullImageBlob.DownloadToByteArray(fullFileBytes, 0)
由于我没有使用过 VB.Net,让我用 C# 提供一个答案。从本质上讲,我所做的是在内存流中读取 blob 的内容,然后将其转换为字节数组并返回该数组。
private static byte[] ReadBlobInByteArray()
{
var cred = new StorageCredentials(accountName, accountKey);
var account = new CloudStorageAccount(cred, true);
var container = account.CreateCloudBlobClient().GetContainerReference("container-name");
var blob = container.GetBlockBlobReference("blob-name");
using (var ms = new MemoryStream())
{
blob.DownloadToStream(ms);
return ms.ToArray();
}
}