using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace study
{
class LinqGroup
{
static void Main(string[] args)
{
List<Employee> empList = new List<Employee>
{
new Employee {ID = , FName = "John", Age = , Sex = 'M', Money=},
new Employee {ID = , FName = "Mary", Age = , Sex = 'F', Money=},
new Employee {ID = , FName = "Amber", Age = , Sex = 'M', Money=},
new Employee {ID = , FName = "Kathy", Age = , Sex = 'F', Money=},
new Employee {ID = , FName = "Lena", Age = , Sex = 'F', Money=},
new Employee {ID = , FName = "Bill", Age = , Sex = 'M', Money=},
new Employee {ID = , FName = "Celina", Age = , Sex = 'F', Money=},
new Employee {ID = , FName = "John", Age = , Sex = 'M', Money=}
}; List<Employee> empGroupByList = (from a in empList
group a by new
{
a.FName,
a.Sex
} into b
orderby b.Key.FName, b.Key.Sex
select new Employee
{
FName = b.Key.FName,
Sex=b.Key.Sex,
Age = b.Sum(c => c.Age),
ID = b.Max(c => c.ID),
Money = b.Average(c => c.Money)
}).ToList<Employee>();
foreach (var item in empGroupByList)
{
Console.WriteLine("item.ID = " + item.ID);
Console.WriteLine("item.FName = " + item.FName);
Console.WriteLine("item.Age = " + item.Age);
Console.WriteLine("item.Sex = " + item.Sex);
Console.WriteLine("item.Money = " + item.Money);
Console.WriteLine("------------------------");
} Console.ReadKey();
}
} public class Employee
{
public int ID { get; set; }
public string FName { get; set; }
public int Age { get; set; }
public char Sex { get; set; }
public decimal Money { get; set; }
}
}

C# Linq Group By 多个字段并返回给实体类List的更多相关文章

  1. linq group by多个字段,返回多个字段.

    直接上例子.var wflist = from u in db.TWelFare where u.fy_no == fy_no orderby u.we_no group u by new { wen ...

  2. Linq Group By 多个字段

    var counts = dal.QueryStatisticsCount(condition); var result = from p in counts group p by new { Auc ...

  3. resultMap自定义映射---8.3.1. 解决列名(表中的字段名称)和实体类中的属性名不一致

    1.1.1.1.      步骤一:将驼峰匹配注释掉 --------------测试完成后仍然 回来开启  其他地方可能用到 一旦注释掉驼峰匹配,那么再通过queryUserById查询的结果中,用 ...

  4. 一步一步学Linq to sql(二):DataContext与实体

    DataContext DataContext类型(数据上下文)是System.Data.Linq命名空间下的重要类型,用于把查询句法翻译成SQL语句,以及把数据从数据库返回给调用方和把实体的修改写入 ...

  5. LINQ to SQL 建立实体类

    使用LINQ to SQL时,需要首先建立用于映射数据库对象的模型,也就是实体类.在运行时,LINQ to SQL 根据LINQ表达式或查询运算符生成SQL语句,发送到数据库进行操作.数据库返回后,L ...

  6. LINQ to SQL 建立实体类 (转)

    http://www.cnblogs.com/DebugLZQ/archive/2012/11/14/2770449.html 使用LINQ to SQL时,需要首先建立用于映射数据库对象的模型,也就 ...

  7. Mybatis——实体类属性名和数据库字段名不同时的解决方案

    数据库的字段: 对应的实体类: 方案一: 在XML映射文件中使用的resultMap,优点:可以被重复使用. <resultMap id="BaseResultMap" ty ...

  8. 【java】实体类中 Set<对象> 按照对象的某个字段对set排序

    背景: User实体类 有个属性是 Set<PositionChange> 职位变更字段 如下: PositionChange实体类  有个属性是positionStartDate   什 ...

  9. 解决SpringDataJpa实体类中属性顺序与数据库中生成字段顺序不一致的问题

    一.在application.yml配置中添加数据库根据实体类自动创建数据库表的配置(这里数据库采用MySQL数据库) jpa: database: MYSQL show-sql: true #Hib ...

随机推荐

  1. DOM 添加 / 更新 / 删除 XML (CURD)

    获得Document /**     * 获取文档     * 1.获得实例工厂     * 2.获得解析器     * 3.获得document     */ 添加结点 /**     * 1.获得 ...

  2. IOS添加自定义字体库

    1.将需要的字体库xxx.ttf添加到工程中,注意一定要在copy bundle resources中存在,如果没有添加上去 2.在info.plist 文件中添加 fonts provided by ...

  3. Guava 15新特性介绍

    原文:http://www.javacodegeeks.com/2013/10/guava-15-new-features.html Guava 是众所周知的google出品的开源工具包,十分好用,本 ...

  4. var foo= {} ;foo.method() 和 单例模式有什么区别

    var Foo={} Foo.method = function() { var i = 0; return { a:function(){ console.log('aa', i++); }, b: ...

  5. 《python基础教程》笔记之 元组

    元组不能修改,创建语法很简单:使用逗号分隔了一些值,则自动创建了元组. >>> 1,2,3(1, 2, 3)>>> 1,(1,) 元组的节本操作同列表相同,除了没有 ...

  6. Caffe : Layer Catalogue(1)

    原文:http://caffe.berkeleyvision.org/tutorial/layers.html 参考:http://blog.csdn.net/u011762313/article/d ...

  7. SharedPreference简介

    SharedPreference 是一种简单的.轻量级的名称/值对(NVP)机制,用于保存原始应用程序数据. 使用SharedPreferences类可以创建名称/值对的命名映射,他们可以在会话之间持 ...

  8. SMTP协议--在cmd下利用命令行发送邮件

    先简单介绍下smtp smtp使用命令和应答在客户与服务器之间传输报文.即客户发出一个命令,服务器返回一个应答.发送方与接收方进行一问一答的交互,由发送方控制这个对话. 在XP系统下点‘开始’-‘运行 ...

  9. KEIL中的变量相关

    例:sfr P0=0x80表示P0口地址为80H:(sfr是字节操作) sfr16 T2=0xCC表示T2口地址的低地址为TL2=0XCC,高地址为TH2=0XCD(sfr16是字操作) 头文件reg ...

  10. pywin32 安装错误 ImportError: DLL load failed: 不是有效的 Win32 应用程序

    pywin32 安装错误 ImportError: DLL load failed:  不是有效的 Win32 应用程序. 发现是因为没有制定Pywin32的dll所致,我们在用Pywin32开发时, ...