C# 中的GroupBy的动态拼接问题及GroupBy<>用法介绍

废话不多说了,直接给大家贴代码了,具体代码如下所示:

public class Person
{
 public string FirstName{set;get;}
 public string LastName{set;get;}
 public Person(){}
 public Person(string firstName, string lastName)
 {
 FirstName = firstName;
 LastName = lastName;
 }
}
List<Person> personList=new List<Person>();
personList.Add(new Person() { FirstName = "Mickey", LastName = "Mouse" });
personList.Add(new Person() { FirstName = "Mickey", LastName = "Mouse" });
personList.Add(new Person() { FirstName = "zhang", LastName = "san" });
string columnName="FirstName";
var dics=personList.GroupBy(x => GetPropertyValue(x, columnName)).ToDictionary(x=>x.Key,x=>x.Count());
foreach(var dic in dics)
{
 textBox1.AppendText(string.Format("{0},{1}\r\n",dic.Key,dic.Value));
}

ps:下面看下C# List泛型集合中的GroupBy<>用法

//根据子项目id得到flowjump实体类
flowJumps = this.FlowJumps;
//按工序groupby flowjumps
IEnumerable<IGrouping<int, FlowJump>> query =
flowJumps.GroupBy(pet => pet.processID, pet => pet);
foreach (IGrouping<int, FlowJump> info in query)
{
List<FlowJump> sl = info.ToList<FlowJump>();//分组后的集合
//也可循环得到分组后,集合中的对象,你可以用info.Key去控制
//foreach (FlowJump set in info)
//{
//}
} 

在使用的时候需要使用分组中的键:

var groupInfo = orderinfo.Info.GroupBy(m => m.xx).ToList();
   foreach (var item in groupInfo)
   {
    string infotemp = item.Key;
   } 

总结

以上所述是小编给大家介绍的C# 中的GroupBy的动态拼接问题及GroupBy<>用法介绍,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 解决C#中Linq GroupBy 和OrderBy失效的方法

    发现问题 在一个数据列表中我用了Linq GroupBy 和OrderBy. 排序在本机正常使用,发到测试后排序死活不对,总以为是程序问题.于是请教了别人有了以下的答案. 问题原因和解决方法 因为服务器装的是英文版操作系统,没有中文包,所以碰见中文排序无法识别,所以使用OrderBy时需要单独处理下. CultureInfo culture = CultureInfo.GetCultureInfo("zh-cn"); List<TeamDto> teamDtos = tea

  • C# 中的GroupBy的动态拼接问题及GroupBy<>用法介绍

    废话不多说了,直接给大家贴代码了,具体代码如下所示: public class Person { public string FirstName{set;get;} public string LastName{set;get;} public Person(){} public Person(string firstName, string lastName) { FirstName = firstName; LastName = lastName; } } List<Person> per

  • oracle中length、lengthb、substr、substrb函数用法介绍

    我记得我曾经在开发form的时候犯过这样一个错误,对于form中的某个字段,对应于数据库中某张表的字段,假设在数据库中这个字段一般也就用到20个汉字的长度,后来我在开发form的时候,设置item类型长度的时候,我惯性的设置成了50byte,想着就算是20个汉字,最多也就占40个byte长度嘛.可是,就因为这一个想当然,结果出现错误了,后来发现数据库字符集编码是utf8,那么应该设置为60.从那以后,每次涉及到给字段设置长度的时候,我都会特别注意下,到底是啥编码. 在oracle中,比较常见的可

  • MySQL中rank() over、dense_rank() over、row_number() over用法介绍

    目录 前言 rank() over(业务逻辑) dense_rank() over(业务逻辑) row_number() over(业务逻辑) 后记 前言 本篇介绍的三个函数均MySQL 8.x 以上版本,8.x以下版本会报语法错误,属于正常现象. MySQL 8.x 实际上就是 MySQL 5.8x,大概是为了通过更大版本型号数字,证明自己比友商先进吧. 你可以通过 mysql --version (cmd命令)或者 select version() (sql语句)查看MySQL版本型号. L

  • springboot中mybatis多数据源动态切换实现

    目录 多数据源配置引入 动态数据源路由实现 动态数据源切换使用 案例源码 在开发中,动态数据源配置还是用的比较多的,比如在多数据源使用方面,又或者是在多个DB之间切换方面.这里给出一个动态数据源的配置方案,两个DB均以mysql为例. 多数据源配置引入 mybatis和mysql在springboot中的引入这里就不在说了,不了解的可以参见springboot中mysql与mybatis的引入. 数据源配置如下: datasource: master: type: com.alibaba.dru

  • 关于Vue中img动态拼接src图片地址的问题

    下面看下Vue中img动态拼接:src图片地址,具体内容如下所示: 使用场景:根据后端返回图片标记来匹配本地图片资源 例如:根据后端返回k1标记,前端生成assets/images/inventory/k1.png图片资源路径 <template> <div class="fl"> <img :src="getImgUrl(gatherInfo.img1)" alt=""> <img :src="

  • MyBatis 动态拼接Sql字符串的问题

    MyBatis 的一个强大的特性之一通常是它的动态 SQL 能力.如果你有使用 JDBC 或其他 相似框架的经验,你就明白条件地串联 SQL 字符串在一起是多么的痛苦,确保不能忘了空格或在列表的最后省略逗号.动态 SQL 可以彻底处理这种痛苦. 动态SQL MyBatis的动态SQL,解决了SQL字符串拼接的痛苦. 1.if <select id="findActiveBlogWithTitleLike" parameterType="Blog" result

  • vue style width a href动态拼接问题的解决

    style width 这个问题 折磨了我一个上午了 好惭愧 因为项目涉及到 进度条 所以必须用行内样式 style 用过vue的都知道 vue中style的用法 大众用法 :style=" { width:30px } " 但是现在涉及到拼接了 直接上代码了 其中list是我data循环的数据 这是一个比例的关系 公开是拼接的时候 一直是报错的 一直出现文本 ' } ' = > 类似这些的东西 很显然 是拼接的问题 于是继续拼接 但是还是变着花样地出现这些鬼东西 于是发现 只要

  • mybatis动态拼接实现有条件的插入

    目录 动态拼接实现有条件的插入 最近在做项目的时候遇到了一个很现实的问题 mybatis插入语句 mybatis插入语句一般都是这样写 动态拼接实现有条件的插入 最近在做项目的时候遇到了一个很现实的问题 那就是根据场景不同,然后实现有条件的插入,说穿了就是当这列有数据的时候进行数据的插入,没有数据的时候自动忽略这列. 其实这些在mybatis的api中有涉及到,但是之前一直没有好好看,直到最近用到了才认真的看了看这块的内容. <!-- 新增部门人员 -->     <insert id=

  • 关于vue src路径动态拼接的小知识

    目录 vue src路径动态拼接 第一种:本地添加 第二种:从接口中获取图片的路径 如何通过变量动态拼接url vue src路径动态拼接 我是新手 今天写vue 的时候 让这个src 给我弄的懵懵 本来打算弄个轮播图加路径 但是怎么也不显示 第一种:本地添加 如果需要很多图片 一直加div就很烦 所有我就把所有图片写在数组里面 注意 引入图片路径一定要加 require 一定要加 require 一定要加 require 然后我用了mint-ui里面的轮播组件 使用v-for 把图片路径循环出

  • Android中使用TagFlowLayout制作动态添加删除标签

    效果图 简单的效果图(使用开源库)[FlowLayout](" https://github.com/hongyangAndroid/FlowLayout ") 步骤 导包 compile 'com.zhy:flowlayout-lib:1.0.3' <com.zhy.view.flowlayout.TagFlowLayout android:id="@+id/id_flowlayout" zhy:max_select="-1" andro

随机推荐