2012-02-21 116 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