首页 > 其他分享 >Linq GroupBy用法

Linq GroupBy用法

时间:2022-10-11 18:45:25浏览次数:44  
标签:aa bb cc list Linq 用法 Add new GroupBy

 

//定义类

List<Mode> list = new List<Mode>();
list.Add(new Mode() { aa = "a", bb = "b", cc = "1" });
list.Add(new Mode() { aa = "a", bb = "b", cc = "2" });
list.Add(new Mode() { aa = "a", bb = "b", cc = "3" });
list.Add(new Mode() { aa = "a", bb = "22", cc = "1" });
list.Add(new Mode() { aa = "a", bb = "22", cc = "2" });
list.Add(new Mode() { aa = "a", bb = "22", cc = "3" });

//使用匿名对象作为groupBy的Key值(注:使用变量直接赋值会导致GroupBy失效)

var lo = list.GroupBy(a => new { a.aa, a.bb });

List<GroupResult> res = new List<GroupResult>();
foreach (var item in lo)
{

//多个字段进行GroupBy之后Key值中需要单独使用
res.Add(new GroupResult() { group = new Group() { aa = item.Key.aa, bb = item.Key.bb }, lstMode = item.ToList() });
}

 

public class Mode
{
public string aa { get; set; }
public string bb { get; set; }
public string cc { get; set; }
}

 

public class GroupResult
{
public Group group { get; set; }

public List<Mode> lstMode { get; set; }
}

标签:aa,bb,cc,list,Linq,用法,Add,new,GroupBy
From: https://www.cnblogs.com/teenagermostr/p/16780206.html

相关文章

  • 函数名的多种用法及装饰器
    目录global与nonlocal函数名的多种用法闭包函数装饰器简介装饰器推导流程装饰器模板装饰器语法糖作业global与nonlocalmoney=666defindex():globalmoneym......
  • golang-set包的用法及源码解析
    Set是一种基本的数据结构,它具备确定性、互异性、无序性三个特点。因此,在开发过程中我们通常用它来判断一些数据的集合与另一个数据集合或者元素的包含关系。在大部分开发......
  • php中array_filter()、array_map()、array_walk()三者的用法和区别
    array_filter()重点在于过滤(而不是新增)某个元素,当你处理到一个元素时,返回过滤后的数组 array_map()重点在于遍历一个数组或多个数组的元素,返回一个新的数组 array_walk()......
  • vue中is的作用和用法
    is的作用<ul><li></li><li></li><li></li></ul>总所周知,ul里面嵌套li的写法是html语法的固定写法(还有如table,select等)。//code1<ul><my-component></my-componen......
  • js中 问号点(?.)和双问号(??)的用法
    当访问多层对象属性(比如res.data.list)时,如果属性res.data为空,则会报引用错误,为此我们不得不这么处理:letdataList=res&&res.data&&res.data.list//......
  • memo、useCallback、useMemo的区别和用法
    memo、useCallback、useMemo的区别和用法发布于2021-12-0611:26:26阅读 3980 react在渲染父子嵌套组件的时候,有时会发生不必要的渲染,根据经验总结出来,大致有......
  • linux wc命令参数及用法详解
    Linux系统提供了wc命令来统计文件的行数统计当前目录下的所有文件行数:wc-l*当前目录以及子目录的所有文件行数:find .*|xargswc-l可以把*改成所要匹配的文件,例如Jav......
  • LayoutInflater用法
    在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是......
  • xargs 命令用法
    事例1:把文件结果做为参数,查看文件大小 cat1.txt|xargs-ils-hl{}-i 用{}代替传递的数据{} 作为cat的结果,在xargs作为一个参数ls:此处不支持命......
  • 【C语言_20】const与#define的用法及区别
    1.const关键词的用法const在实际编程中用得并不多,const是constant的缩写,意思是“恒定不变的”!它是定义只读(不能修改)变量的关键字,或者说const是定义常变量的关键字。......