我需要使用新的包Azure.Storage.Blobs以字节数组格式从Azure存储中获取文件。我无法在C#中找到这样做的方法。
public byte[] GetFileFromAzure()
{
byte[] filebytes;
BlobServiceClient blobServiceClient = new BlobServiceClient( "TestClient");
BlobContainerClient containerClient = blobServiceClient.GetBlobContainerClient("TestContainer");
BlobClient blobClient = containerClient.GetBlobClient("te.xlsx");
if (blobClient.ExistsAsync().Result)
{
var response = blobClient.DownloadAsync().Result;
using (var streamReader = new StreamReader(response.Value.Content))
{
var line = streamReader.ReadToEnd();
//No idea how to convert this to ByteArray
}
}
return filebytes;
}
你知道如何实现这一点,以获得存储在Azure Blob存储上的文件的字节数组吗?
感谢帮助。
2条答案
按热度按时间piok6c0g1#
尝试以下方法将Blob作为流读取,然后在返回时将该流转换为字节数组:
iyr7buue2#
我已经尝试了上面的代码。但我得到下面的错误。
System.IO.FileNotFoundException:“未能加载文件或程序集“System.Runtime.CompilerServices.Unsafe,Version=4.0.4.1,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。系统找不到指定的文件。'谁能指导我如何解决上述错误。
使用.NET Framework 4.6.1