У меня есть файлы в хранилище файлов Azure.
Я пытаюсь программно архивировать их в большие двоичные объекты Azure и не знаю, как это сделать эффективно.
Я продолжаю видеть образцы кода о копировании из одного контейнера больших двоичных объектов в другой контейнер больших двоичных объектов .. но не из файла в большой двоичный объект.
Можно ли обойтись без загрузки всего содержимого файла локально, а затем без загрузки этого содержимого? Может быть, использовать Ури или что-то в этом роде?
Больше информации:
- Контейнеры File и Blob находятся в одной учетной записи хранения.
- Учетная запись хранения
RA-GRS
Вот пример кода, над которым я думал ... но он просто не кажется правильным :( (также псевдокод ... без проверки и проверки).
var file = await ShareRootDirectory.GetFileReference(fileName);
using (var stream = new MemoryStream())
{
await file.DownloadToStreamAsync(stream);
// Custom method that basically does:
// 1. GetBlockBlobReference
// 2. UploadFromStreamAsync
await cloudBlob.AddItemAsync("some-container", stream);
}