我正在开发一个Windows Phone 7应用程序,将使用Bing Maps显示您附近的ATM机。
我有一个包含地址和GPS坐标的XML文件。但是,我该如何从Visual Studio将此文件添加到我的程序中?如果将BuildAction设置为Content并将Copy to output directory设置为Always Copy,则该文件仍未在IsolatedStorage中。我是否必须构建一个从Web下载信息的机制?或者还有其他方法吗?
我正在开发一个Windows Phone 7应用程序,将使用Bing Maps显示您附近的ATM机。
我有一个包含地址和GPS坐标的XML文件。但是,我该如何从Visual Studio将此文件添加到我的程序中?如果将BuildAction设置为Content并将Copy to output directory设置为Always Copy,则该文件仍未在IsolatedStorage中。我是否必须构建一个从Web下载信息的机制?或者还有其他方法吗?
在Visual Studio项目中列出的内容文件被复制到生成的XAP文件中(类似于ZIP文件)。它们不会被复制到隔离存储中。
对于XML文件,您可以使用文件路径作为参数调用XmlReader.Create,如下所示:
using (XmlReader reader = XmlReader.Create("path/to/file.xml"))
{
// read XML file here
}
或者您也可以调用Application.GetResourceStream并使用返回的StreamResourceInfo对象的Stream属性:
StreamResourceInfo sri = Application.GetResourceStream(
new Uri("path/to/file.xml", UriKind.Relative));
// read XML file here from sri.Stream, e.g. using a StreamReader object
"Mango" SDK 附带 ISETool,可将应用程序的隔离存储快照导入/导出到本地目录:
# 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,该工具支持一个选项(device-folder
),用于指定子目录来备份/恢复。