[代码]获取XML元素的值(LINQ to XML)

此代码主要用来示范如何使用XElement.Element()方法获取指定名称的子元素,此方法只会返回一个子元素。

在代码中首先获取所有名为Item的元素,然后在LINQ to XML查询中,通过调用XElement.Element()方法获取名为Quantity和USPrice的子元素,然后据此返回大于100美元的订购项,最后将其打印到控制台上。

代码中用到的XML:
<?xml version="1.0"?> <PurchaseOrder PurchaseOrderNumber="99503" OrderDate="1999-10-20"> <Address Type="Shipping"> <Name>Ellen Adams</Name> <Street>123 Maple Street</Street> <City>Mill Valley</City> <State>CA</State> <Zip>10999</Zip> <Country>USA</Country> </Address> <Address Type="Billing"> <Name>Tai Yee</Name> <Street>8 Oak Avenue</Street> <City>Old Town</City> <State>PA</State> <Zip>95819</Zip> <Country>USA</Country> </Address> <DeliveryNotes>Please leave packages in shed by driveway.</DeliveryNotes> <Items> <Item PartNumber="872-AA"> <ProductName>Lawnmower</ProductName> <Quantity>1</Quantity> <USPrice>148.95</USPrice> <Comment>Confirm this is electric</Comment> </Item> <Item PartNumber="926-AA"> <ProductName>Baby Monitor</ProductName> <Quantity>2</Quantity> <USPrice>39.98</USPrice> <ShipDate>1999-05-21</ShipDate> </Item> </Items> </PurchaseOrder>
示例代码:
XDocument PurchaseOrderDocument = XDocument.Load(@"C:/LINQ/PurchaseOrder.xml"); IEnumerable<XElement> ItemElements = PurchaseOrderDocument.Descendants("Item"); IEnumerable<XElement> Items = from Item in ItemElements where (int)Item.Element("Quantity") * (decimal)Item.Element("USPrice") > 100 orderby Item.Attribute("PartNumber").ToString() select Item; foreach (XElement Item in Items) { Console.WriteLine(Item.ToString()); }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值