如何解决Azure Blob 存储 SDK v12 - BlobClient DownloadAsync 消失了吗?
我有使用 BlobClient.DownloadAsync()
方法使用 Azure.Storage.Blobs
nuget 包 v12.8 从 Azure Blob 存储下载文件的生产代码,它似乎工作得很好。但是,我升级了 nuget 包并准备编写一些新代码来处理 zip 文件,这也依赖于下载以提取 zip 文件……但注意到 Storage SDK 的最新 API 中有一些变化。>
除了来自 Microsoft 以及来自互联网的几乎每个样本外,都略有错误,因为该方法将返回的 BlobDownloadInfo
包装到 Response<T>
对象中 - 迫使您调用 {{ 1}} 首先,他们似乎也使用上述方法下载 blob 文件 - 但我无法通过 Intellisense 找到该方法。
当我查看将我带到 .Value
方法的源代码时,我看到它被 BlobBaseClient.DownloadAsync()
修饰,这意味着该 API 可能会通过向开发人员隐藏它而慢慢被带走,但没有破坏现有代码或标记为 [Editorbrowsable(EditorbrowsableState.Never)]
。但我找不到任何肯定指向这一点的文章/问题/文档。看起来像这样:
话虽如此.....如果目标是从 v12.9 开始,使用 .NET SDK 以异步方式从 Azure Blob 存储(块 Blob)下载文件,则应该采用什么方式?通过 ASP.NET 控制器操作(REST 端点)将其“流式传输”到客户端(如浏览器等)(不保存到服务器上的本地文件)?
Obsolete
上似乎有几个可用的“下载”API,但它们的文档有些含糊不清,而且 MS 文档似乎没有进一步说明:
- DownloadAsync() - 基于所有示例/博客标记为不可浏览,但事实上的方式
- DownloadStreamingAsync()
- DownloadContentAsync()
- DownloadToAsync()
- OpenReadAsync()
此外,如果尝试执行一些不通过 REST API 下载到浏览器客户端的其他操作,例如,如果您正在解压缩一个 blob 文件并且提取的文件也将进入 blob 存储,那会是最好不要下载,而是通过 BlobClient
打开它?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。