基本上,創建與從第二列表中的所有ID的列表,並檢查DOC1的每個項目,如果它是在列表中。 性能方面,我認爲它不是最好的選擇 - 但它應該工作
var qry = from item in doc1.Descendants("Item")
where
!(from item2 in doc2.Descendants("Item")
select item2.Attribute("id"),Value
).ToList().Contains(item.Attribute("id").Value)
select item;
在上面的LINQ語句,我認爲在DOC1每個元素創建ID列表。更好的選擇是先創建列表,然後使用列表中的下一個語句:
List<string> items = (from item2 in doc2.Descendants("Item")
select item2.Attribute("id").Value
).ToList();
var qry = from item in doc1.Descendants("Item")
where !items.Contains(item.Attribute("id").Value)
select item;
是啊,他們是相當大... – ereyes
他們是否排序? – Sklivvz