2015-11-15 6 views
1

Поэтому мне нужно, чтобы загрузить файл в свою учетную запись, используя DropBox C#Dropbox v2.0 API Загрузка файла

настоящее время я использую Dropbox API v2.0, который является сравнительно новым.

Я работаю с WinForms C# и я получил этот пример кода из самих здесь Dropbox: https://www.dropbox.com/developers/documentation/dotnet#tutorial

мне нужна помощь Тхо, я не совсем понимаю, как я назвал бы Выгрузка через WinForms.

private void Form1_FormClosing(object sender, FormClosingEventArgs e) 
    { 
     var task = Task.Run((Func<Task>)this.Upload); 
     task.Wait(); 
    } 

    async Task Upload() 
    { 
     DropboxClient dbx = new DropboxClient("FF5tO7fs20AAAAAAAAALcjFNxDeEpWSneNOPl6ya9276gFB7s7pUJKVI2vAxFcSs"); 
     var file = "159386425737-IPs.txt"; 
     var mem = new MemoryStream(Encoding.UTF8.GetBytes("TESTING" + IPCount.ToString())); 
     try 
     { 
      var updated = await dbx.Files.UploadAsync(file, WriteMode.Overwrite.Instance, body: mem); 
     } 
     catch (Exception e) 
     { 
      MessageBox.Show(e.ToString()); 
     } 
    } 

Ошибка я получаю на этой линии

var updated = await..... 

и это ошибка во время выполнения он бросает

System.ArgumentsOutOfRangeException: Specified argument was out of range of valid values. 
Parameter name: Path 

и эта ошибка

Dropbox.Api.BadInputException : Error in call to API function "files/upload" : HTTP header "Dropbox-Api-Arg": path: "folder//file"" did not match parretn '/.*' 

ответ

0

С функция объявляется как асинхронная и возвращает задача, представляющая вызов асинхронного метода, вам просто нужно убедиться, что вы дождались завершения задачи, прежде чем закрыть форму. Попробуйте это ...

private void Form1_FormClosing(object sender, FormClosingEventArgs e) 
{ 
    var task = Upload("APPKEY", "FILELOCATION","TEXT.TXT","CONTENT TEXT HERE"); 
    task.Wait(); 

} 
+0

Ну, это что-то делает, чтобы начать. Однако на task.wait(); Я получил эту ошибку Необработанное исключение типа «System.AggregateException» произошло в mscorlib.dll Дополнительная информация: Произошла одна или несколько ошибок. – dseds

Смежные вопросы