我正在尝试从Azure上的blob帐户下载blob文件作为字节数组。我做这个 var blockBlob = blobContainer.GetBlockBlobReference(id); using (var mStream = new MemoryStream()) { blockBlob.DownloadToStreamAsync(mStream); result = mStream.ToArray(); }上面的代码向我返回了一个空流。我的azure blob帐户中确实有该文件,并且检查了代码生成的uri,这与我的azure blob上要作为字节数组下载的文件上的uri相同。有没有更好的方法在c#中将azure blob文件下载为字节数组?
2 回答
慕田峪4524236
TA贡献1875条经验 获得超5个赞
您应该等待异步操作完成。
using (var mStream = new MemoryStream())
{
await blockBlob.DownloadToStreamAsync(mStream);
result = mStream.ToArray();
}
您之所以空虚,是因为您试图在尚无价值时从中获取价值。
暮色呼如
TA贡献1853条经验 获得超9个赞
供您参考的两个选项
正如@Gaurav所说,请使用
await blockBlob.DownloadToStreamAsync(mStream)
注意,public async Task methodname()
如果使用此方法,则应将方法更改为。仅
blockBlob.DownloadToStream(mStream)
在不需要异步方法的情况下使用。
给你一些参考
- 2 回答
- 0 关注
- 273 浏览
添加回答
举报
0/150
提交
取消