Windows phone 7 从Visual Studio向WP7独立存储添加文件?

Windows phone 7 从Visual Studio向WP7独立存储添加文件?,windows-phone-7,isolatedstorage,Windows Phone 7,Isolatedstorage,我正在开发一个WindowsPhone7应用程序,在这个应用程序中,我将用bing地图显示ATM的nere您的位置 我有一个包含地址和gps坐标的xml文件。但是如何从VisualStudio将此文件添加到程序中?如果我将BuildAction设置为Content并复制到输出目录,则始终复制。该文件仍不在IsolatedStorage中。我是否必须建立一种机制从web下载信息?或者有其他方法吗?在Visual Studio项目中作为内容列出的文件被复制到生成的XAP文件(类似于ZIP文件)。它们

我正在开发一个WindowsPhone7应用程序,在这个应用程序中,我将用bing地图显示ATM的nere您的位置


我有一个包含地址和gps坐标的xml文件。但是如何从VisualStudio将此文件添加到程序中?如果我将BuildAction设置为Content并复制到输出目录,则始终复制。该文件仍不在IsolatedStorage中。我是否必须建立一种机制从web下载信息?或者有其他方法吗?

在Visual Studio项目中作为内容列出的文件被复制到生成的XAP文件(类似于ZIP文件)。它们不会复制到独立的存储中

对于XML文件,可以使用文件路径作为参数进行调用,如下所示:

using (XmlReader reader = XmlReader.Create("path/to/file.xml"))
{
    // read XML file here
}
也可以调用并使用返回对象的属性:


您不能在设计时直接将文件传递到隔离存储。仅当应用程序正在运行时

我仍然建议通过web服务将文件传递给应用程序。主要是因为如果最终需要更改XML的内容,则需要更新应用程序

我所要做的只是创建一个WCF服务,它将通过一个简单的HTTP请求返回序列化数据(或现有XML)。

Mango SDK随附,它可以在本地目录中获取应用程序隔离存储的快照并将其还原到本地目录:

# Copy data from IS to directory
ISETool.exe ts xd <PRODUCT-ID> "C:\TempDirectory\IsolatedStore"

# Copy data from IS to directory
ISETool.exe rs xd <PRODUCT-ID> "C:\TempDirectory\IsolatedStore"
#将数据从IS复制到目录
ISETool.exe ts xd“C:\TempDirectory\IsolatedStore”
#将数据从IS复制到目录
ISETool.exe rs xd“C:\TempDirectory\IsolatedStore”

如果不想覆盖整个IS,该工具支持一个选项(
设备文件夹
),用于指定要备份/还原的子目录。

混合方法最好。如果你只上网,如果没有网络,应用程序根本不会做任何事情……这取决于应用程序的功能。在这种情况下,应用程序无论如何都需要Bing地图。因此,如果没有一个活跃的互联网连接,它无论如何都无法工作。因此,这里只使用web的方法是合适的。我下载列表时遇到的问题是,它当前的容量为940kb。而且它可能会随着时间的推移而增长。这意味着,当你第一次运行应用程序时,它将下载相当大的数据块。所以我想我会在应用程序中存储一个初始列表,然后下载更新。客户可能更喜欢这样。如果文件内容来自引用的项目或程序集,该怎么办?我找不到使用Application.GetResourceStream或相对包URI格式访问它的方法。。。
# Copy data from IS to directory
ISETool.exe ts xd <PRODUCT-ID> "C:\TempDirectory\IsolatedStore"

# Copy data from IS to directory
ISETool.exe rs xd <PRODUCT-ID> "C:\TempDirectory\IsolatedStore"