【发布时间】:2011-04-14 23:15:21
【问题描述】:
我有一个简单的 LINQ 语句,它根据查询 Xml 文件返回对象列表。
var locations = from s in xdoc.Descendants("RECORD")
where IdList.Contains(s.Element("ID1").Value)
select new Location
{
Id = s.Element("ID1").Value
};
如果“包含”为真,每个 Xml 记录还有一个我想要返回的 ID2 元素。所以基本上,我希望我的 Location 对象是有条件的,基于 IdList 包含的返回值(它可以是 ID1 或 ID2)。比如:
if(IdList.Contains(s.element("ID1").value){ select new Location {Id = s.Element("ID1").Value};}
if(IdList.Contains(s.element("ID2").value){ select new Location {Id = s.Element("ID2").Value};}
这可以在单个 LINQ 语句中完成吗?
【问题讨论】: