Может ли кто-нибудь сообщить мне, в каком случае и какой метод я должен использовать для загрузки / скачивания BLOB-объектов? - PullRequest
0 голосов
/ 06 июня 2019

Для хранилища BLOB-объектов Azure SDK из c # существует несколько методов загрузки / выгрузки BLOB-объектов.

Способы загрузки: DownloadText, DownloadToByteArray, DownloadToStream, DownloadToFile.

Способы загрузки: UploadText, UploadFromByteArray, UploadFromStream, UploadFromFile.

Как мне выбрать эти методы? например, когда файл велик во время загрузки / выгрузки, и могут ли некоторые методы вызывать проблемы с кодированием и т. д .?

Спасибо.

1 Ответ

0 голосов
/ 06 июня 2019

Вы выбираете исходя из того, что у вас есть или что вы хотите;эти вещи здесь, чтобы сделать вашу жизнь проще.

Если у вас есть / вы хотите файл, используйте методы File (чтобы вам не приходилось, например, читать ваш файл в байтовый массив или прикреплять поток перед его загрузкой, или вы можете просто скачать файлс большого двоичного объекта на ваш сервер)

Если у вас есть / хотите получить поток, используйте потоковые методы (представьте, что вы хотите отправить данные большого двоичного объекта клиенту вниз по сокету tcp - нет смысла записывать их в файлна вашем сервере, затем, прочитав файл и отправив его клиенту, вы должны просто открыть поток из большого двоичного объекта, прочитать его и записать в rxpnsocket, который отправляется клиенту. Это минимизирует использование ресурсов сервера)

Если у вас есть / хотите массив, используйте методы массива (может быть, вы хотите как-то обработать его в памяти)

Для получения дополнительной информации см. Документацию https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.storage.blob.cloudblockblob?view=azure-dotnet

...