2012-02-21 173 views
1

這是我上傳數據庫備份文件到SkyDrive的代碼。當程序嘗試使用功能UploadWebFile上載時,程序在最後一行中斷。 /Backups是SkyDrive上的文件夾。我正在使用SkyDrive .Net API Client 2.0.2b。UploadWebFile SkyDrive .Net API客戶端

的例外是:

The request was aborted: The request was canceled.

是不是問題的語法,或者是別的東西,有什麼解決辦法嗎?

var client = new SkyDriveServiceClient(); 

client.LogOn("username", "password"); 

WebFolderInfo webInfo = new WebFolderInfo(); 
webInfo.Path = "/Backups"; 

client.UploadWebFile(@"D:\db.bak", webInfo); 

回答

0

這裏是解決方案。問題是我們不能創建WebFolderInfo併爲其提供路徑手冊。我們必須從WebFolderInfo []列表中引用文件夾。對於client.Timeout爲大文件有時間上傳提供了很大的價值。

 var client = new SkyDriveServiceClient(); 

     client.LogOn("username", "password");   
     WebFolderInfo wfInfo = new WebFolderInfo(); 

     WebFolderInfo[] wfInfoArray = client.ListRootWebFolders(); 

     wfInfo = wfInfoArray[0]; 
     client.Timeout = 1000000000; 
     client.UploadWebFile(@"D:\db.bak", wfInfo); 
0

不要以爲這是一個語法錯誤,但考慮到你說的是baout數據庫備份,我認爲這是文件維度問題。您可以上傳到SkyDrive 的文件的最大大小應該是,它可能是50MB

檢查文件的維度。

+0

它小於50MB,它是小型數據庫。 – 2012-02-21 08:09:58

+0

我現在嘗試與txt文件,我得到錯誤:遠程服務器返回一個錯誤:(501)未實現。 – 2012-02-21 08:14:24

+0

@IvanTanasijevic:可能是,在這一點上,你所指的目錄不存在或指向它的相對路徑不正確? – Tigran 2012-02-21 08:33:51