2013-04-25 88 views
0

我正在使用DropNet。我有上傳文件到DropBox的問題。 我相信與Dropbox的連接沒問題。當我改變了上傳方法創建文件和刪除文件方法,工作正常。 我真的看不到任何問題,爲什麼不上傳?我使用與DropNet完全相同的API。如何使用dropnet上傳到Dropbox?

protected void Btn_upload_Click(object sender, EventArgs e) 
    { 
     if (FileUpload1.HasFile) 
     { 
      if (Session["DropNetUserLogin"] != null) 
      { 
       try 
       { 
        _client.UseSandbox = true; 
        _client.UploadFile("/", FileUpload1.FileName, FileUpload1.FileBytes); 
       } 
       catch (Exception ex) 
       { 
        litOutput.Text = "Error in upload user login in session " + ex.Message; 
       } 
      } 
      else 
      { 
       litOutput.Text = "Session expired..."; 
      } 
     } 
     else 
     { 
      litOutput.Text = "You did not specify a file to upload."; 
     } 
    } 
} 
+0

是什麼FileUpload1.FileName包含哪些內容?它只是該文件的文件名或整個路徑?你會得到什麼樣的錯誤(如果有的話)? – 2013-04-25 09:51:11

+0

嗨GaborSch,非常感謝您的快速回復。我沒有得到任何錯誤,它的編譯。當我調試它。 FileUpload.FileName是我選擇的文件的本地名稱。 (它只是文件名,例如a.txt) – user2235768 2013-04-25 10:38:33

+0

嗯......在調試時,你是否檢查過FileUpload1.FileBytes實際上有任何字節? – 2013-04-25 10:52:15

回答

0

這裏是爲我工作,希望這可以幫助你的代碼:

private void button1_Click(object sender, RoutedEventArgs e) 
{ 
    var dlg = new OpenFileDialog(); 

    dlg.Filter = "Text documents (.txt)|*.txt"; 

    Nullable<bool> result = dlg.ShowDialog(); 

    if (result == true) 
    { 
     string filename = dlg.FileName; 
     FileNameTextBox.Text = filename; 
    } 

    var x = @"/" + Path.GetFileName(FileNameTextBox.Text); 

    _client.UploadFile("/", Path.GetFileName(FileNameTextBox.Text), File.ReadAllBytes(@"" + FileNameTextBox.Text)); 
}