【问题标题】:Is Isolated Storage Always Necessary?隔离存储是否总是必要的?
【发布时间】:2011-04-15 01:41:03
【问题描述】:

我看到很多关于如何将数据从应用程序写入文件然后将其放入隔离存储的示例。我不想将任何数据写入我的 xml 文件,我只是想将其保存到独立存储中,然后稍后再查询。

几个简单的问题

  • 有人有关于如何将现有 xml 文件放入独立存储的代码。另外,由于我没有写入此文件,我还需要隔离存储吗?我可以将 xml 添加到我的项目并使用 Linq to xml 打开它并在单击按钮时将其关闭吗?

  • 我想在后台通过我的应用程序查询 xml。我看到很多关于序列化的例子,我需要这样做吗?可以直接打开xml文件使用linq to xml查询数据吗?

我可以这样做,将 bbxml.xml 设置为 Content 并忘记隔离存储,然后就这样做吗?

 using (XmlReader reader = XmlReader.Create("bbxml.xml"))
        {
            XDocument xml = XDocument.Load(reader);
            //query xml....
}

【问题讨论】:

    标签: windows-phone-7


    【解决方案1】:

    在 Visual Studio 的项目文件中包含 XML 文件,然后在“属性”窗口中确保将 Build Action 设置为 Content 并且将 Copy to Output Directory 设置为 Copy alwaysCopy if newer。这将在输出 XAP 文件中包含该文件。

    要在代码中访问此文件,请使用:

    XDocument doc = XDocument.Load( "path/to/my/file.xml" );
    

    当然,不一定非得是XDocument,你可以类似地使用任何XML阅读器类。

    【讨论】:

    • 如果可以这样,为什么需要隔离存储?
    • @Nick LaMarca:您的应用无法修改以这种方式包含的文件,但存储在隔离存储中的文件是可以修改的。
    • 那么,既然我没有修改文件,这是最好的方法吗? ....感谢您的澄清
    • @Nick LaMarca:是的,如果不需要修改文件,我只需将其包含在 XAP 中即可。
    • 我发现 "Application.GetResourceStream(new Uri("Foo.txt", UriKind.Relative))" 非常适合我的场景。
    猜你喜欢
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    • 2015-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多