如何使用 XML LINQ 進行檢查?
我需要檢查父母是否同時擁有 child1 和 child2。這應該回傳真:
<parent>
<child1></child1>
<child2></child2>
</parent>
這些是錯誤的:
<parent>
<child1></child1>
</parent>
或者
<parent>
<child2></child2>
</parent>
uj5u.com熱心網友回復:
假設您有一個包含一個root元素和一組parent元素的 XML 檔案,例如:
<root>
<parent>
<child1></child1>
<child2></child2>
</parent>
<parent>
<child1></child1>
</parent>
<parent>
<child2></child2>
</parent>
</root>
您可以使用以下代碼獲取parent包含恰好一個child1元素和恰好一個child2元素的s :
var xmlFile = @"[...Path to your xml file...]";
var root = XElement.Load(xmlFile);
var parents = root.Elements("parent");
var eligibleParents = parents
.Where(p => p.Elements("child1").Count() == 1
&& p.Elements("child2").Count() == 1);
parent 將包含:
<parent>
<child1></child1>
<child2></child2>
</parent>
<parent>
<child1></child1>
</parent>
<parent>
<child2></child2>
</parent>
eligibleParents 將包含:
<parent>
<child1></child1>
<child2></child2>
</parent>
表達方式
p.Elements("child1").Count() == 1
&& p.Elements("child2").Count() == 1
如果parent( p) 元素恰好有一個child1且恰好有一個child2子元素,則回傳 true 。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/378869.html
