none
Sky Drive UpLoad Question: RRS feed

  • 问题

  • 版主你好:

    目前在最新版本的VS2011中在SkyDrive中上传文件是调用LiveConnectClient 实例client的BackgroundUploadAsync方法

                       

    LiveOperationResultuploadResult = awaitclient.BackgroundUploadAsync("/me/skydrive", "UpLoadPicture01.jpg", file, true);

    我的疑问是我上传的文件的目录是SkyDrive下的根目录,我想做的是上传到SkyDrive上的目录:比如我在我的SkyDrive上新建一个MyProject文件夹,然后我想把我的文件

    上传大这个文件夹下,我把路径改为:"/me/skydrive/MyProject"

    注:我已经在我的SkyDrive下新建好了MyProject文件夹

    LiveOperationResultuploadResult = awaitclient.BackgroundUploadAsync("/me/skydrive/MyProject", "UpLoadPicture01.jpg", file, true);

    然后运行时候一直会报这是无效的URL,请求的路径不被支持;

    版主,我想肯定是我的用法有误,不可能只能上传文件到SkyDrive的根目录下,而不能上传到指定的文件夹,

    请版主给我指点举个小例子才能上传文件到我想要新建文件夹的指定的路径

    感谢了!

    2012年6月19日 2:50

答案

  • 你是VS 2012 RC还是VS 11 beta?

    通过/me/skydrive/files遍历找到你的子目录,然后基于目录的id来上传。

                LiveConnectClient client = new LiveConnectClient(session);
                LiveOperationResult result = await client.GetAsync("/me/skydrive/files");
                dynamic files = result.Result;
                List<object> data = (List<object>)files.data;
                foreach (dynamic item in data)
                {
                    LiveOperationResult uploadResult;
                    if (item.name == "MyProject")
                        uploadResult = await client.BackgroundUploadAsync(item.id, "finename", file, true);
                }
            }

    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年6月19日 10:55
    版主

全部回复

  • 你是VS 2012 RC还是VS 11 beta?

    通过/me/skydrive/files遍历找到你的子目录,然后基于目录的id来上传。

                LiveConnectClient client = new LiveConnectClient(session);
                LiveOperationResult result = await client.GetAsync("/me/skydrive/files");
                dynamic files = result.Result;
                List<object> data = (List<object>)files.data;
                foreach (dynamic item in data)
                {
                    LiveOperationResult uploadResult;
                    if (item.name == "MyProject")
                        uploadResult = await client.BackgroundUploadAsync(item.id, "finename", file, true);
                }
            }

    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年6月19日 10:55
    版主
  • 谢谢版主详细的回答,非常的有用!!!

    2012年6月20日 5:18
  • 那在skydrive目录新建文件夹,文件夹已存在怎么处理~
    2012年8月21日 3:46