当前位置: 首页 > 编程语言 > C#

OneDrive上传-下载到指定目录Share

时间:2023-04-10 13:42:43 C#

OneDrive上传/下载到指定目录我正在尝试使用LiveSDK(v5.6)在我的WindowsPhone8.1Silverlight应用程序中包含OneDrive备份/恢复。我可以读取/写入标准的“me/skydrive”目录,但我正在寻找一种上传/下载到指定目录的方法。如果文件夹不存在,我可以创建该文件夹,没问题。我一直在尝试下面的方法,但没有运气。varres=await_client.UploadAsync("me/skydrive/mydir",fileName,isoStoreFileStream,OverwriteOption.Overwrite);我还尝试获取目录ID并将其传入。varres=await_client.UploadAsync("me/skydrive/"+folderId,fileName,isoStoreFileStream,OverwriteOption.Overwrite);同样的错误..我得到'mydir'或不受支持的id..."{request_url_invalid:Microsoft.Live.LiveConnectException:URL包含不受支持的路径'mydir'。"有什么建议么?如果你建议一个同步上传的答案,你能不能也包括我如何从指定目录下载我的文件?谢谢!这是一个扩展方法,用于检查文件夹是否已创建,如果是,则返回文件夹ID。如果没有,创建它并返回文件夹ID。然后您可以使用此ID上传到该文件夹??或从该文件夹下载。公共异步静态任务CreateDirectoryAsync(此LiveConnectClient客户端,字符串文件夹名称,字符串parentFolder){字符串文件夹ID=null;//检索所有目录。varqueryFolder=parentFolder+"/files?filter=folders,albums";varopResult=awaitclient.GetAsync(queryFolder);动态结果=opResult.Result;foreach(result.data中的动态文件夹){//检查当前文件夹是否具有传递的名称。如果(folder.name.ToLowerInvariant()==folderName.ToLowerInvariant()){folderId=folder.id;休息;}}if(folderId==null){//未找到目录,因此使用PostAsync方法创建它。varfolderData=newDictionary();folderData.Add("名称",folderName);opResult=awaitclient.PostAsync(parentFolder,folderData);结果=opResult.Result;//检索创建的文件夹的ID。folderId=result.id;}返回文件夹ID;}然后你用它作为:stringskyDriveFolder=awaitCreateDirectoryAsync(liveConnectClient,"","me/skydrive");现在,skyDriveFolder有一个文件夹ID,可以在上传和下载时使用这是一个上传示例:LiveOperationResultresult=awaitliveConnectClient.UploadAsync(skyDriveFolder,fileName,fileStream,OverwriteOption.Overwrite);YnotDraw根据您提供的内容,这里介绍了如何通过指定文件名来下载文本文件。未找到文件和其他可能的异常未在下面涵盖,但这些是星星正确对齐时的效果:publicasyncstaticTaskDownloadFileAsync(thisLiveConnectClientclient,stringdirectory,stringfileName){,目录,"我/skydrive");varresult=awaitclient.DownloadAsync(skyDriveFolder);varoperation=awaitclient.GetAsync(skyDriveFolder+"/files");varitems=operation.Result["data"]作为列表;stringid=string.Empty;//搜索文件-如果未找到文件,请在此处添加处理foreach(objectiteminitems){IDictionaryfile=itemasIDictionary;if(file["name"].ToString()==fileName){id=file["id"].ToString();休息;}}vardownloadResult=awaitclient.DownloadAsync(string.Format("{0}/content",id));varreader=newStreamReader(downloadResult.Stream);stringtext=awaitreader.ReadToEndAsync();返回文本;}使用中:以上是C#学习教程:OneDrive上传/下载到指定目录分享所有内容,如果对大家有用,需要详细了解C#学习教程,希望大家多多关注—var资源ult=awaitDownloadFile(_client,"MyDir","backup.txt");本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处: