Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 所有XML元素的查询集合_C#_Xml_Linq To Xml - Fatal编程技术网

C# 所有XML元素的查询集合

C# 所有XML元素的查询集合,c#,xml,linq-to-xml,C#,Xml,Linq To Xml,我希望解析XML文件,并且能够搜索任何元素 我的XML代码看起来很不传统(我无法控制): 这可能与LINQ有关吗?您可以使用LINQ to Xml来查询Xml文档,您可以搜索元素,属性并获取所需内容 更多信息可在此处找到: 您可以创建如下所示的简单查询 XElement root = XElement.Parse(File.ReadAllText("C:\\Test.xml")); var test = new { ToolVersion = root.Descenda

我希望解析XML文件,并且能够搜索任何元素

我的XML代码看起来很不传统(我无法控制):


这可能与LINQ有关吗?

您可以使用
LINQ to Xml
来查询
Xml
文档,您可以搜索
元素
属性
并获取所需内容

更多信息可在此处找到:

您可以创建如下所示的简单查询

  XElement root = XElement.Parse(File.ReadAllText("C:\\Test.xml"));
  var test = new 
  {
      ToolVersion = root.Descendants("ToolVersion").FirstOrDefault().Value,
      Result = root.Descendants("Result").FirstOrDefault().Value
  };

您可以使用LINQ to XML迭代所有二级元素:

  var xdoc = XDocument.Load(@"C:\test.xml");
    foreach (var element in xdoc.Element("DiagReport").Elements().Elements())
    {
        if (element.Name == "Result")
        {
            string value = element.Value;
        }
    }

谢谢这正是我想要的。
  XElement root = XElement.Parse(File.ReadAllText("C:\\Test.xml"));
  var test = new 
  {
      ToolVersion = root.Descendants("ToolVersion").FirstOrDefault().Value,
      Result = root.Descendants("Result").FirstOrDefault().Value
  };
  var xdoc = XDocument.Load(@"C:\test.xml");
    foreach (var element in xdoc.Element("DiagReport").Elements().Elements())
    {
        if (element.Name == "Result")
        {
            string value = element.Value;
        }
    }