无法在应用程序XAP包中找到文件
本文关键字:包中找 文件 XAP 应用程序 | 更新日期: 2023-09-27 18:18:45
我正在尝试读取XML文件,该文件是:
<root>
<resources>
<item>itemname1</item>
</resources>
<resources>
<item>itemname2</item>
</resources>
</root>
c#代码:
XDocument loadedData = XDocument.Load("items.xml");
var data = from query in loadedData.Descendants("resources")
select new Item
{
item = (string)query.Element("item")
};
当我把我的XML文件到项目的根文件夹其工作良好,但如果我把我的文件在任何文件夹下(例如/XML/items.xml或/Assets/items.xml)它得到我的错误,不能在应用程序XAP包中找到文件。我还编辑了xml文件的属性作为构建操作->内容和复制到输出直接->如果更新则复制。但同样的结果无法在应用程序XAP包中找到文件。
我还参考了xap中没有找到的问题Xml文件
使用下面的代码加载文件夹
中的XML文件 StreamResourceInfo xml = Application.GetResourceStream(new Uri("Assets/items.xml", UriKind.Relative));
var appDataXml = XElement.Load(xml.Stream);
Edit:获取项目值
var allItems = from o in appDataXml.Elements("resources")
select o;
foreach (var item in allItems)
{
var itemValue = item.Value;
}
不使用ForEach的替代解决方案:
var allItems = from o in appDataXml.Elements("resources")
select new Items
{
item = (string)o.Element("item")
};
var Firstitem = allItems.Cast<Items>().ElementAt(0);
MessageBox.Show(Firstitem.item.ToString());
Items类定义:
public class Items
{
public string item { get; set; }
}