日期:2014-05-20  浏览次数:20683 次

问一条linq 语句
有一个list<entity> 要得到 entit.id 有那些 并得到它出现的次数 
类似sql语句
select id,count(*) from table group by id

用 linq 怎么实现?

------解决方案--------------------
C# code

                        var query = from p in db.entity
                        group p by p.id into g
                        let countname = g.Count(x => x.id)
                        select new
                        {
                            id = g.Key,
                            Count = countname 
                        };

------解决方案--------------------
探讨
有一个list<entity> 要得到 entit.id 有那些 并得到它出现的次数
类似sql语句
select id,count(*) from table group by id

用 linq 怎么实现?

------解决方案--------------------
使用“Linqer.exe”,可以将Sql转换成Linq
------解决方案--------------------
C# code

            
            var query = listEntity.GroupBy(c => c.id);
            foreach (var group in query)
            {
                Console.WriteLine(group.Count().ToString()); 
            }

------解决方案--------------------
至于这个,可以搜索一下GroupJoin是怎么用的。

探讨

在加一个 条件 c.id 在 另外一个list<entity2> 中 entity2.cid 中
相当于 id in ( select cid from table2 )

------解决方案--------------------
至于这个,可以搜索一下GroupJoin是怎么用的。

探讨

在加一个 条件 c.id 在 另外一个list<entity2> 中 entity2.cid 中
相当于 id in ( select cid from table2 )

------解决方案--------------------
探讨
在加一个 条件 c.id 在 另外一个list<entity2> 中 entity2.cid 中
相当于 id in ( select cid from table2 )

------解决方案--------------------
探讨
在加一个 条件 c.id 在 另外一个list<entity2> 中 entity2.cid 中
相当于 id in ( select cid from table2 )