考慮下面的XML的LINQ to XML LIKE子句
<?xml version="1.0"?>
<Message>
<ArrayOfStock xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Stock>
<StockID>9cddb639-25ee-4415-be07-3109e5ae9883</StockID>
<Description>Stock Item 0</Description>
</Stock>
<Stock>
<StockID>f89f02f9-b359-48c8-8d2f-3a950837f4fb</StockID>
<Description>Stock Item 1</Description>
</Stock>
<Stock>
<StockID>3338ec80-f59e-4979-a04c-f7d52e386bb7</StockID>
<Description>Stock Item 2</Description>
</Stock>
</ArrayOfStock>
</Message>
是否有返回消息的孩子們在兒童的名字開始與「ArrayOf」,那麼這更好/更正確的方法是什麼?
IEnumerable<XElement> array = from arrayOfX
in document.Root.Elements()
where arrayOfX.Name.ToString().IndexOf("ArrayOf") > -1
select arrayOfX;
PS:這對邊緣情況也有問題,其中IndexOf()將爲String.Empty值返回0。 (雖然不確定這是否可以在格式良好的XML中實現 - 不認爲它是?)
嗯。那麼現在我覺得自己像一隻鵝...忘了那種方法。 – 2011-04-19 06:37:42
.NET中有很多有用的'String'方法('Contains','StartsWith','EndsWith'來命名,但是三個) - 學習它們! – 2011-04-19 23:03:48
是的,指揮官! :-p – 2011-04-27 02:21:51