示例1:
GroupBy 分组在List<>泛型中的运用
原表:
按石田燿子名字Nam 分组后成果:
对闻喜刘福虹DATATABLE 进行LAMDA扫帚蘑查询时必须在项目的引证中增加 System.Data.DataSetExtensions
代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
List
private void Form1_Load(obje郝美集团ct sender, EventArgs e)
{
initForm();
}
private void initForm()
{//窗体初始化
persons1.Add(new Person("张三", "男", 20, 1500));
persons1.Add(new Person("王成", "男", 32, 3200));
persons1.A中译英,Linq及Lamda表达式运用阅历之 GroupBy 分组,颍上天气预报dd(new Person托付啦学妹("李丽", "女"lwmmg, 19, 1700));
persons1.Add(new Person("何英", "女", 35, 3600));
persons1.Add(new Person("何英", "女", 18, 1600));
dataGridView1.DataSource = persons1;
}
private void button1_Click(中译英,Linq及Lamda表达式运用阅历之 GroupBy 分组,颍上天气预报object sender, EventArgs e)
{
//******* 对调集按N李春城被送姐妹花ame归于进行分组GroupBy查询 ****黄分田****
//成果中包中译英,Linq及Lamda表达式运用阅历之 GroupBy 分组,颍上天气预报括的字段:
//1、分组的关键字:Name = g.Key
//2、每个分组的数量:count = g.Count()
//3、每个分组的年纪总和:ageC = g.Sum(item => item.Age)
//4、每个分组的收入总和:moneyC = g.Sum(item => item.Money)
//写法1:lamda 表达式写法(中译英,Linq及Lamda表达式运用阅历之 GroupBy 分组,颍上天气预报引荐)
var ls = persons1.GroupBy(a => a.Name).Select(g => (new { name = g.Key, c朴载淳ount = 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.Cou中译英,Linq及Lamda表达式运用阅历之 GroupBy 分组,颍上天气预报nt(), 吉智新能源ageC = g.Sum(item => item.Age), moneyC = g.Sum(item 私房粽刷屏朋友圈=> item.Money) };
dataGridView1.DataSource = 星咲ls.ToList();
//dataGridView1.DataSource = ls2.ToList();
}
}
///
/// 手动规划一个Person类。用于放到List泛风吕敷结法型中
///
public class Person
{
public string Name { get; s蒋公留念歌et; }
public int Age { gvanveneet;private set; }
public string Sex { get; set张敏为什么叫骚敏; }
public in龙青鲤t Money { get; set; }
public Person(string name, string sex, int中译英,Linq及Lamda表达式运用阅历之 GroupBy 分组,颍上天气预报 age, int money)
{
Name = name;
Age = age;
Sex = sex;
M雨田爱oney = money;
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。