首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用LINQ to XML按属性查找XML元素?

要使用LINQ to XML按属性查找XML元素,您可以使用XElement类的属性方法。以下是一个简单的示例,说明如何使用LINQ to XML查找具有特定属性值的XML元素。

首先,确保您已经安装了System.Xml.Linq命名空间。

代码语言:csharp
复制
using System;
using System.Xml.Linq;

接下来,创建一个包含XML数据的XElement对象。

代码语言:csharp
复制
string xml = @"<books>
                  <book id='1'>
                   <title>Book 1</title>
                   <author>Author 1</author>
                  </book>
                  <book id='2'>
                   <title>Book 2</title>
                   <author>Author 2</author>
                  </book>
                </books>";

XElement booksElement = XElement.Parse(xml);

现在,您可以使用LINQ查询按属性查找XML元素。例如,要查找具有特定id属性值的所有book元素,可以使用以下代码:

代码语言:csharp
复制
int targetId = 1;
var booksWithTargetId = from book in booksElement.Elements("book")
                        where (int)book.Attribute("id") == targetId
                        select book;

这将返回一个包含具有目标id属性值的所有book元素的IEnumerable<XElement>对象。您可以使用foreach循环遍历结果并对每个元素执行操作。

代码语言:csharp
复制
foreach (var book in booksWithTargetId)
{
    Console.WriteLine("Book ID: {0}", book.Attribute("id"));
    Console.WriteLine("Title: {0}", book.Element("title"));
    Console.WriteLine("Author: {0}", book.Element("author"));
}

这将输出以下内容:

代码语言:txt
复制
Book ID: 1
Title: Book 1
Author: Author 1

您可以根据需要修改查询以查找具有其他属性值的元素。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券