gpt4 book ai didi

c# - 无法下载 Azure Blob 进行流式传输

转载 作者:行者123 更新时间:2023-12-05 00:59:46 25 4
gpt4 key购买 nike

我正在使用 Azure Blob 存储来保存一些文件。我在下载此流时遇到问题并且不确定原因。我没有收到任何错误,只是一个空流。我已经验证该文件存在于容器中,甚至运行代码来列出容器中的所有文件。任何帮助将不胜感激。

private async Task<MemoryStream> GetMemoryStreamAsync(string fileName)
{
var storageAccountName = Environment.GetEnvironmentVariable("storage_account_name");
var storageAccountKey = Environment.GetEnvironmentVariable("storage_access_key");
var storageContainerName = Environment.GetEnvironmentVariable("storage_container_name");

CloudStorageAccount storageAccount = new CloudStorageAccount(new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(storageAccountName, storageAccountKey), true);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(storageContainerName);
CloudBlockBlob blockBlob = container.GetBlockBlobReference(fileName);

MemoryStream stream = new MemoryStream();

await blockBlob.DownloadToStreamAsync(stream);

return stream;
}

最佳答案

在返回流之前,您需要将位置设置为零,以便流的使用者从头开始读取它。

MemoryStream stream = new MemoryStream();

await blockBlob.DownloadToStreamAsync(stream);

stream.Position = 0;

return stream;

关于c# - 无法下载 Azure Blob 进行流式传输,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52728786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com