C# Linq Group By 多个字段并返回给实体类List
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的更多相关文章
- 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 ...
- Linq Group By 多个字段
var counts = dal.QueryStatisticsCount(condition); var result = from p in counts group p by new { Auc ...
- resultMap自定义映射---8.3.1. 解决列名(表中的字段名称)和实体类中的属性名不一致
1.1.1.1. 步骤一:将驼峰匹配注释掉 --------------测试完成后仍然 回来开启 其他地方可能用到 一旦注释掉驼峰匹配,那么再通过queryUserById查询的结果中,用 ...
- 一步一步学Linq to sql(二):DataContext与实体
DataContext DataContext类型(数据上下文)是System.Data.Linq命名空间下的重要类型,用于把查询句法翻译成SQL语句,以及把数据从数据库返回给调用方和把实体的修改写入 ...
- LINQ to SQL 建立实体类
使用LINQ to SQL时,需要首先建立用于映射数据库对象的模型,也就是实体类.在运行时,LINQ to SQL 根据LINQ表达式或查询运算符生成SQL语句,发送到数据库进行操作.数据库返回后,L ...
- LINQ to SQL 建立实体类 (转)
http://www.cnblogs.com/DebugLZQ/archive/2012/11/14/2770449.html 使用LINQ to SQL时,需要首先建立用于映射数据库对象的模型,也就 ...
- Mybatis——实体类属性名和数据库字段名不同时的解决方案
数据库的字段: 对应的实体类: 方案一: 在XML映射文件中使用的resultMap,优点:可以被重复使用. <resultMap id="BaseResultMap" ty ...
- 【java】实体类中 Set<对象> 按照对象的某个字段对set排序
背景: User实体类 有个属性是 Set<PositionChange> 职位变更字段 如下: PositionChange实体类 有个属性是positionStartDate 什 ...
- 解决SpringDataJpa实体类中属性顺序与数据库中生成字段顺序不一致的问题
一.在application.yml配置中添加数据库根据实体类自动创建数据库表的配置(这里数据库采用MySQL数据库) jpa: database: MYSQL show-sql: true #Hib ...
随机推荐
- effective条款15,在资源管理类中小心copying行为
class A { private: int *p; void lock(){ cout << p << "is lock" << endl; ...
- MySQL 大DML操作建议
㈠ 大数据量INSERT ⑴ 使用多行插入代替单行:insert into t values (),(),(),... ⑵ LOAD DATA INFILE ... ...
- 分割gbk中文出现乱码的问题解决
近日遇到一个神奇的字“弢(tao)”. 具体的过程是这样的: $list = explode('|', 'abc弢|bc'); var_dump($list); 取得这个分割的结果. 和想象不同,结果 ...
- python 3.5 猜数字游戏
#!/usr/bin/env python #encoding: utf-8 number = 88 for i in range(1,6): num = int(input('gusee numbe ...
- altium designer Summer09出现的问题解决方案
在编译原理图时,引脚和连线旁边出现很多红线,提示 error:signal with no driver. 原理图没有加入到Project里. 第一次导入没问题,但是改了个元件的封装,在更新一下(De ...
- 智能卡安全机制比较系列(一)CardOS
自从智能卡开始进入人们的日常生活之后,大家对于智能卡的安全性普遍看好,但是不同公司的智能卡在安全机制的实现方面也存在很多的差异.对于智能卡应用开发和智能卡COS设计人员来说,如果能够更多地了解不同公司 ...
- PowerShell 字符串操作符
字符串操作符 格式化操作符 –F 在PowerShell文本操作符中非常重要,经常被用来增强数字类型和日期类型的可读性: "{0} diskettes per CD" -f (72 ...
- redis 验证消息队列也是写磁盘的
# 下面的例子将会进行把数据写入磁盘的操作: # 900秒(15分钟)之后,且至少1次变更 # 300秒(5分钟)之后,且至少10次变更 # 60秒之后,且至少10000次变更 # # 注意:你要想不 ...
- iOS 9之SFSafariViewController
金田( github 示例源码) 有时候需要在App内部打开一个网页,例如为了展示公司官网,产品列表信息,Facebook,微博等.以前都是使用 UIWebView,iOS 8引入了WKWebView ...
- android ListView用法介绍
ListView在Android开发中是比较常用的组件,它是以列表的形式展示内容,并且还可以处理用户的选择与点击等操作: LIstView显示数据一般需要三方面: (1)ListView组件:用来展示 ...