C# linq to xml 简单示例
2021-04-24 12:27
标签:lte odi ice desc 名称 equal str esc products data.xml 通过 linq to xml ,查找价格超过10的产品,并打印供应商名称与产品名称; 输出 SupplierName=CD-by-CD-by-Sondheim , ProductName=Assassins 参考资料 1、深入理解C#(第2版); C# linq to xml 简单示例 标签:lte odi ice desc 名称 equal str esc products 原文地址:http://www.cnblogs.com/fanful/p/7954933.html 1 xml version="1.0" encoding="utf-8" ?>
2 Data>
3 Products>
4 Product Name="West Side Story" Price="9.99" SupplierID="1" />
5 Product Name="Assassins" Price="14.99" SupplierID="2" />
6 Product Name="Frogs" Price="13.99" SupplierID="1" />
7 Product Name="Sweeney Todd" Price="10.99" SupplierID="3" />
8 Products>
9
10 Suppliers>
11 Supplier Name="Solely Sondheim" SupplierID="1" />
12 Supplier Name="CD-by-CD-by-Sondheim" SupplierID="2" />
13 Supplier Name="Barbershop CDs" SupplierID="3" />
14 Suppliers>
15 Data>
1 XDocument doc = XDocument.Load("data.xml");
2 var filtered = from p in doc.Descendants("Product")
3 join s in doc.Descendants("Supplier")
4 on (int)p.Attribute("SupplierID")
5 equals (int)s.Attribute("SupplierID")
6 where (decimal)p.Attribute("Price") > 10
7 select new
8 {
9 ProductName = (string)p.Attribute("Name"),
10 SupplierName = (string)s.Attribute("Name")
11 };
12
13 foreach (var v in filtered)
14 {
15 Console.WriteLine("SupplierName={0} , ProductName={1}", v.SupplierName, v.ProductName);
16 }
SupplierName=Solely Sondheim , ProductName=Frogs
SupplierName=Barbershop CDs , ProductName=Sweeney Todd
文章标题:C# linq to xml 简单示例
文章链接:http://soscw.com/index.php/essay/78942.html