Вам нужно использовать Await , чтобы получить ожидаемый результат.
Демонстрационный код:
Dim myDbClient As New DropboxClient("auth token")
Dim folder = "test" 'dropbox folder name
Dim fileName = "1.txt" 'dropbox file name
Dim response As IDownloadResponse(Of FileMetadata) = Await myDbClient.Files.DownloadAsync("/" + folder + "/" + fileName)
Dim bytes = Await response.GetContentAsByteArrayAsync()
Using fileStream = Create("D:\tom\2.txt") ' local path
fileStream.Write(bytes, 0, bytes.Length)
End Using
Обновление:
Добавить этапы подробного тестирования:
1. Создайте приложение Dropbox и сгенерируйте токен авторизации.
2. Создайте папку и загрузите файл в папку Dropbox
3. Создайте пустой проект Asp.net и добавьте файл webform.aspx с именем DropBoxApiTest.aspx и установите его в качестве начальной страницы.
4.Чтобы установить Dropbox.Api, выполните следующую команду в консоли диспетчера пакетов:
PM> Install-Package Dropbox.Api
5.Добавьте кнопку загрузки на веб-странице
<asp:Button ID="_btnDownload" runat="server" Text="Download" />
6.Добавьте событие щелчка длякнопка и следующий код.
Protected Async Sub _btnDownload_Click(sender As Object, e As EventArgs) Handles _btnDownload.Click
Dim token = "xaMln4bUnRAAAAAAAAAAIq...."
Dim myDbClient As New DropboxClient(token)
Dim folder = "test" 'dropbox folder name
Dim fileName = "1.txt" 'dropbox file name
Dim response As IDownloadResponse(Of FileMetadata) = Await myDbClient.Files.DownloadAsync("/" + folder + "/" + fileName)
Dim bytes = Await response.GetContentAsByteArrayAsync()
Using fileStream = Create("D:\tom\download.txt") ' local path
fileStream.Write(bytes, 0, bytes.Length)
End Using
End Sub
7. Нам также нужно изменить aspx Async на true
8.Проверить его локально.