所以我使用独立存储将我的对象在本地保存为 XML。它奏效了,但现在微软改变了它的工作方式。根据这个网站:
http://msdn.microsoft.com/en-us/library/3ak841sy.aspx
独立存储不适用于 Windows 应用商店应用。相反,使用 Windows 运行时 API 中包含的 Windows.Storage 命名空间中的应用程序数据类来存储本地数据和文件。
我是这样做的:
var _Option = Windows.Storage.CreationCollisionOption.ReplaceExisting;
var _File = await Folder.CreateFileAsync(path, _Option);
MemoryStream saveData = new MemoryStream();
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("", "");
XmlSerializer x = new XmlSerializer(data.GetType());
x.Serialize(saveData, data,ns);
if (saveData.Length > 0)
{
// Get an output stream for the SessionState file and write the state asynchronously
using (Stream fileStream = await _File.OpenStreamForWriteAsync())
{
saveData.Seek(0, SeekOrigin.Begin);
await saveData.CopyToAsync(fileStream);
await fileStream.FlushAsync();
}
return true;
}
但我不知道如何用新方法做到这一点。有任何想法吗?