我有一个从服务收到的数据集。数据采用 XML 格式。我们得到一个包含所有数据的 XElement 对象。 XML 文档的结构非常简单。看起来像这样:
<root>
<dataPoint>
<id>1</id>
<param1>somedata</param1>
<param2>somedata</param2>
</dataPoint>
<dataPoint>
<id>2</id>
<param1>somedata</param1>
<param2>somedata</param2>
</dataPoint>
</root>
当然,我有大量的数据点。我还有一个列表(List),其中数据点的 id 显示在 GUI 中。我想要的是不在 GUI 上显示的数据点,这样我只能操作这些数据点,而不是整个数据集。 谢谢
最佳答案
var toDisplay = new List<string>() { "2" };
var xDoc = XElement.Load(.....);
var dPoints = xDoc.Descendants("dataPoint")
.Where(d => !toDisplay.Contains(d.Element("id").Value));
var newXml = new XElement("root",dPoints).ToString();
关于c# - LINQ 排除带有 XElement 的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10489225/