我有一个 IQueryable<SomePOCO>
(一个LINQ-Entities查询,如果这很重要):
public class SomePOCO
{
public string ParentName { get; set; }
public string Name { get; set; }
public string Url { get; set; }
}
我正在尝试将数据投影到一个单一的对象上(匿名类型最好,因为我只需要方法作用域),该对象具有2个属性:
public string ParentName { get; set; }
public ICollection<SimplePoco> { get; set;
SimplePOCO如下:
public class SimplePOCO
{
public string Name { get; set; }
public string Url { get; set; }
}
我之所以这样做,是因为我检索到的所有“SomePOCO”具有相同的ParentName,因此我只想获取一次,而不是将相同的值N次传输并执行
.First()
。希望这样说得清楚明白。最终结果应该是我可以这样做:var parentName = result.ParentName; // string
var pocos = result.SimplePOCOs; // ICollection<SimplePOCO>
我认为我需要某种聚合方式,例如使用
GroupBy
或SelectMany
。有什么想法吗?