【问题标题】:Why is XmlSerializer.Serialize saving the file in test phase but not for the published version为什么 XmlSerializer.Serialize 将文件保存在测试阶段而不是已发布版本
【发布时间】:2016-12-29 10:49:11
【问题描述】:

我已经使用了page上的以下函数

public static void WriteToXmlFile<T>(string filePath, T objectToWrite, bool append = false) where T : new()
{
    TextWriter writer = null;
    try
    {
        var serializer = new XmlSerializer(typeof(T));
        writer = new StreamWriter(filePath, append);
        serializer.Serialize(writer, objectToWrite);
    }
    finally
    {
        if (writer != null)
            writer.Close();
    }
}

我是这样称呼它的:

WriteToXmlFile<List<channel>>("channels.txt", channelList);

这是为了将电视频道列表保存到本地文件,以便稍后重新打开以向用户显示。

这在我测试时非常有效:我在手机上卸载任何以前的版本,进行干净的构建,然后在手机上进行部署,然后直接在手机上启动应用程序。

然后我从商店下载了应用程序并且不再保存(我没有错误,因为我发现了所有异常)。

我可以知道为什么该列表不再与已发布版本一起保存吗? 我缺少任何能力吗? 还是文件路径(实际上我没有提供)或我用来保存文件的方法不正确?

我可以阅读一些关于独立存储的内容,我应该使用它吗?

我的应用程序适用于 Windows Phone 8.x 及更高版本

该文件仅供应用程序使用

文件中最多可以放入 10 个项目,因此保存应该很快(对异步保存方法的要求不高)

谢谢

【问题讨论】:

    标签: c# windows-phone-8


    【解决方案1】:

    我改用了IsolatedStorage(这个网站上也有示例),我的问题就解决了。

    我真的不知道我使用的方法将文件放在哪里,但这绝对不是正确的方法。

    【讨论】:

      猜你喜欢
      • 2021-04-05
      • 1970-01-01
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多