//写法1:lamda 表达式写法(推荐)  
var ls = persons1.GroupBy(a => a.Name).Select(g => (new { name = g.Key, count = g.Count(), ageC = g.Sum(item => item.Age), moneyC = g.Sum(item => item.Money) }));  
//写法2:类SQL语言写法 最终编译器会把它转化为lamda表达式  
var ls2 = from ps in persons1  
        group ps by ps.Name  
        into g  
        select new { name = g.Key, count = g.Count(), ageC = g.Sum(item => item.Age), moneyC = g.Sum(item => item.Money) };  

分类: C#

c# Linq及Lamda表达式应用经验之 GroupBy 分组示例1:GroupBy 分组在List&lt;&gt;泛型中的应用原表:按姓名Nam 分组后结果:对DATATABLE 进行LAMDA查询时必须在项目的引用中添加 System.Data.DataSetExtensions代码://写法1:lamda 表达式写法(推荐) var l... 统计和B、C、D同组的数量 List<Order> Orders= samples. Group By(p => new { p.B, p.C, p.D}) //D,B,C是samples的属性 .Select(p => new Order
foreach (DynamicObject lstKSItem in lstKSItems) var entity = lstKSItem["FEntity"] as DynamicObjectCollection; if (entity.Count == 0) continue;
var grpBalance = listBalance. Group By(m => new { m.MerChantId, m.Name}).Distinct().Select(t => new balInfo MerChantId = t.Key.MerChantId,
在工作中程序需要对查询出来数据List进行进一步处理时, Linq 的能力就体现出来了。例如以下一段代码,它的意思是对list按照ZG_ID, ZG_IDNAME, ZG_NO, CARD_NO进行 分组 求和后赋值到disZg,这个变量的数据组成就是select new{}中的内容,接下来就可以对disZg进行进一步分析操作了。 var disZg = from tt in list wher...
LINQ 和Lambda都是 C# 编程语言的功能,但它们有不同的用途。 LINQ 是一个查询语言,允许您使用类似于SQL的语法查询各种数据源,例如数据库、集合、XML文档等。使用 LINQ 可以更容易地查询和处理数据,从而减少了编写大量循环和条件语句的代码。 Lambda是一种 表达式 ,用于创建匿名方法或委托。Lambda 表达式 通常用于 LINQ 查询中作为筛选器、选择器或排序器。它允许您更轻松地编写匿名函数,并且可以提高代码的可读性和可维护性。 因此,虽然 LINQ 和Lambda经常一起使用,但它们有不同的功能和用途。 LINQ 用于查询和处理数据,而Lambda用于编写匿名方法和委托。