我正在尝试将1 KB文件上传到OneDrive到现有文件夹。该应用程序是真正的Windows Phone 8.1设备上的WinRT。
代码非常简单,取自文档的例子:
var lcc = new LiveConnectClient(session);
//https://msdn.microsoft.com/en-us/library/office/dn659730.aspx
var r = await lcc.CreateBackgroundUploadAsync(folderId, "somefile.bin", file, OverwriteOption.Overwrite);
var r2 = await r.StartAsync();
return r2;
此代码是从异步按钮点击事件调用的。使用BackgroundUploadAsync时我会遇到相同的结果(这可能与使用前2种方法的方式相同)。
所以StartAsync方法执行,但没有收到响应,它等待无限期(它不会阻止UI线程),没有抛出可观察的异常,也没有上传文件。
folderId引用OneDrive上的真实文件夹。
我也没有注意到上传文件的任何问题。它存在,没有应用程序试图访问它。
使用类似的代码从OneDrive下载文件没有问题。
从Windows Store 8.1应用程序运行时,完全相同的代码工作正常。 Windows& Windows Phone应用程序使用相同的WinRT Live SDK库。所以我想问题是Live SDK使用的后台传输API。
答案 0 :(得分:0)
我试图在单独的应用程序中隔离问题,但没有成功。相同的代码在另一个项目中正常工作。所以我重新安装(卸载然后从VS2015运行)应用程序,现在工作正常!