为什么 XmlSerializer.Serialize 在测试阶段保存文件而不是发布版本

Why is XmlSerializer.Serialize saving the file in test phase but not for the published version

我已经使用了此 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);

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

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

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

我可以知道为什么发布的版本不再保存该列表吗? 我缺少任何功能吗? 或者文件路径(实际上我提供 none)或我用来保存文件的方法不正确?

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

我的申请是 Windows Phone 8.x 及更高

该文件仅供应用程序使用

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

谢谢

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

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