C#-使用 LINQ 查询从复杂的 XML 文档中获取值
发布时间:2022-08-20 17:56:42 233
相关标签: # flask
<?xml version="10" encoding="utf-8"?>
<FormSet xmlns="www.googlecom">
<FormHeader>
<FormSectionA>
<Order>
<Order02>Valuexxx</Order02>
<OrderSubGroup>
<Order03>Valuexxx</Order03>
<Order03>Valuexxx</Order03>
<Order04>Valuexxx</Order04>
<Order05>Valuexxx</Order05>
</OrderSubGroup>
<OrderSubGroup>
<Order03>Valuexxx</Order03>
<Order03>Valuexxx</Order03>
<Order04>Valuexxx</Order04>
<Order05>Valuexxx</Order05>
</OrderSubGroup>
<OrderSubGroup>
<Order03>Valuexxx</Order03>
<Order03>Valuexxx</Order03>
<Order04>Valuexxx</Order04>
<Order05>Valuexxx</Order05>
</OrderSubGroup>
<Order08>Valuexxx</Order08>
<OrderFinalGroup>
<Order09>Valuexxx</Order09>
<Order10>Valuexxx</Order10>
<Order11>Valuexxx</Order11>
</OrderFinalGroup>
</Order>
</FormSectionA>
</FormHeader>
</formset>
我一直在尝试从上述 xml 执行某种形式的 LINQ 查询。实际的 XML 比这更复杂,但我想如果我能弄清楚如何在底部找到 Order11 的值,我就能解决剩下的问题。我试图创建一个 XML 树,为整个 xml 文档创建类(这变得非常复杂,我认为我过于复杂了)
我登陆了以下内容
using System;
using System.Xml.Linq;
using System.Linq;
class test
{
static void Main()
{
XDocument doc = XDocument.Load(@"test.xml");
XNamespace googs = "http://www.google.com";
string Str = (string)
(from x in doc.Descendants(googs + "Order11")
select x).First();
Console.WriteLine(Str);
}
}
但是当我运行它时,它告诉我那里没有序列。我也尝试过不引用命名空间,但我觉得这是倒退了一步。
谢谢,我为这个常见问题道歉,所有替代解决方案都没有为我工作,我不知道为什么。我所需要的只是能够从这样一个有点复杂的 XML 文档中获取一个值,我的程序的其余部分就可以了。最终,该值将被传递到一个变量中以供其他工作完成,但所有这些都已经整理好。
真正的 XML 文档具有使每个子组唯一的属性,但我没有包括该属性,因为最终组始终具有唯一的名称,而这就是我所关心的。
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报