내 Azure 저장소 에뮬레이터에서 발생합니다 (아직 실제 Azure 저장소에서 시도하지 않았습니다). Blob 저장소에 파일을 저장하고 있습니다. 더 작은 파일에는 아무런 문제가 없습니다 (예 : < = 107MB). 그러나 더 큰 파일 (예 : 114MB 이상)의 경우 오류없이 파일을 업로드 할 수는 있지만 파일을 다운로드하려고 할 때 메모리 예외가 발생했습니다.하늘색 방울 저장소 : CloudBlockBlob.DownloadToStream OutOfMemory 예외가 발생합니다.
public Stream GetStream(string fileName)
{
var blob = GetCloudBlobContainer().GetBlockBlobReference(fileName);
if (blob.Exists())
{
Stream stream = new MemoryStream();
blob.DownloadToStream(stream);
return stream;
}
return null;
}
blob.DownloadToStream (stream) 호출시 예외가 발생합니다.
이 문제를 해결하는 방법은 무엇입니까?
업데이트 : 알았어, 내 경우에 대한 해결책을 찾았습니다. 스트림을 반환하는 대신에, 나는 blob.DownloadToFile()을 사용하여 로컬 파일에 직접 저장하도록 할 수 있습니다. (어쨌든 필요합니다). 그러나 나는이 문제에 대한 해결책을 찾는 데 여전히 관심이있다.
이 답변을 수락했습니다. 그러나 내 컴퓨터의 메모리가 114 MB 만있는 파일에 대해서만 실행되고 있다고 생각하지 않습니다. – newman