我正在创建一个具有可自定义动态磁贴的应用程序,并且有一些我自己的标记 XML 模板,我希望将其包含在我的项目中。
XML 文件已放置在 Assets/Tiles/FileName.xml
中。
我正在尝试使用以下代码来加载文档:
XmlDocument tileXml = new XmlDocument();
tileXml.LoadXml("ms-appx:///Assets/Tiles/SM_Date.xml");
文件名与目录中一样存在。运行后,应用程序强制退出,无法找到指定的文件。
这是我在输出中遇到的唯一错误
A first chance exception of type 'System.Exception' occurred in AppName.exe
如何从项目资源加载 XML 文件?
我尝试过以下路径
ms-appex:///Assets/Tile/SM_DAte.xml
ms-appx:///Assets...
ms-appex://Assets...
ms-appx://Assets...
/Assets...
Assets...
/Tiles...
Tiles...
一切都无济于事。我已经检查了输出目录,文件确实被复制到位于以下位置的 Assets 目录: \bin\Debug\AppX\
尝试将其作为文件加载也不起作用:
using System.IO;
string xmlContent = File.ReadAllText("");
上面抛出一个错误,指出文件未定义。
最佳答案
首先尝试将路径更改为“ms-appx”而不是“ms-appex”。 如果这不起作用(我希望如此),请尝试将 Stream 获取到资源文件,然后调用 XmlDocument 上接受 Stream 的 Load 重载方法。
请参阅此处:http://msdn.microsoft.com/en-us/library/windows/apps/hh965322.aspx 在这里:Getting a Stream from a resource file / content
关于c# - VS2013无法加载Windows 8应用程序的资源文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19691509/