【发布时间】:2012-10-26 15:52:36
【问题描述】:
我有两个从数据库中获取的列表,如下所示:
List<myobject1> frstList = ClientManager.Get_FirstList( PostCode.Text, PhoneNumber.Text);
List<myobject2> secondList = new List<myobject2>;
foreach (var c in frstList )
{
secondList.Add( ClaimManager.GetSecondList(c.ID));
}
现在我的列表将包含如下数据:
frstList: id = 1, id = 2
secondList: id=1 parentid = 1, id=2 parentid=1 and id = 3 parentid = 2
我想单独计算这些并返回计数最多的那个?在上面的例子中,它应该从 frsList 返回 id=1,从 secondList 返回 id1 和 id2...
试过了,还是不行
var numbers = (from c in frstList where c.Parent.ID == secondList.Select(cl=> cl.ID) select c).Count();
有人可以在 linq 或普通的 foreach 中帮助我吗?
谢谢
【问题讨论】:
-
我不确定我是否理解你的问题。您只是想返回包含最多项目的列表?
-
您希望输出是什么样的?
-
想要对 secondlist 进行计数并返回更大的计数...就像示例状态
-
所以,只是更大的计数,而不是更大的列表?
-
我不认为 foreach 循环中的语句是正确的。请检查一下。我同意 John 和 Lostdreamer 的观点,这个问题并不清楚。
标签: c# linq list foreach count