我正在使用 LiveConnectAPI 为我的 windows phone 7 应用从 skydrive 下载文本文件
Text文件包含我需要在 IsolatedStorage
问题是当我从skydrive下载文件并写入 IsolatedStorage 时,我在 IsolatedStream 中得到 NULL 。
我需要编写 skydrive 根文件夹中的 TextFile 的XML内容。
注意: -
名为 userData.txt 的文件位于“me / skydrive / files”(skydrive的根文件夹,如果我在访问根文件夹时出错,请更正我)
string id = string.Empty;
>client.GetCompleted += (obj, args) =>
{
List<Object> items = args.Result["data"] as List<Object>;
foreach (object item in items)
{
Dictionary<string, object> file = item as Dictionary<string, object>;
if (file["name"].ToString() == "userData.txt")
{
id = file["id"].ToString();
break;
}
}
client.DownloadAsync(id+"/content");
};
client.GetAsync("me/skydrive/files");
下载完成时
client.DownloadCompleted += (o, a) =>
{
MemoryStream outputStream = (MemoryStream)a.Result;
//Saving the file to Isolated Storage.
var myStore = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream myFileStream = myStore.CreateFile(GlobalConstants.cnst_storefile_name);
myFileStream.Write(outputStream.GetBuffer(), 0, (int)outputStream.Length);
myFileStream.Close();
StreamReader reader = new StreamReader(new IsolatedStorageFileStream(GlobalConstants.cnst_storefile_name, FileMode.Open, myStore));
string rawData = reader.ReadToEnd();
reader.Close();
};
}
答案 0 :(得分:1)
您可以查看您正在使用的LiveConnect库的版本。 Microsoft最近对SkyDrive进行了一些重大更改,使用旧版本库构建的代码不再起作用。你想要图书馆的5.4版本。