![](/img/trans.png)
[英]Linq2sql count grouping vote entity query problems, can't get properties once grouped?
[英]LINQ grouping - get other, not grouped properties
我的LINQ查询(nHibernate)没什么问题
我需要具有相等属性Symbol的对象znak计数
我的查询:
var tmp = (from znak in sesja.Query<Znak>()
group znak by znak.Symbol into r
select new { Name= r.Key.Name, SUM= r.Count() });
该查询有效,但是我需要使对象包含znak类的其他属性。
在这种情况下: select new { Name= r.Key.Name, SUM= r.Count() });
我只能通过r.Key( Symbol属性)创建新对象。 但是我的新对象中需要其他属性。
可能吗 ?
我建议使用lambda Linq语法:
var items = sesja.Query<Znak().AsEnumerable();
var newList = items.GroupBy(x=>x.Symbol).Select(
x=> new { Name=x.Key.Name, Count = x.Count(), Items = x.ToList() });
阅读有关Linq语法LINQ的更多信息:点表示法与查询表达式
我认为lambda syntax
更具可读性,并且在代码中看起来更简洁,因为它是c#风格而非sql风格。
当然,IL代码不会有任何区别,始终可以安装诸如resharper之类的工具,它们可以将lambda语法转换为类似sql的语法。
尝试类似
var tmp = (from znak in sesja.Query<Znak>()
group znak by znak.Symbol into r
select new { Name= r.Key.Name, SUM= r.Count(), Items = r.ToList() });
Items
属性将在组中包含实际对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.