zoukankan      html  css  js  c++  java
  • datatable 分组

    public static void PrintPersons()
    {
    //准备数据
    DataTable dt = new DataTable();
    dt.Columns.Add(new DataColumn("ID", typeof(int)));
    dt.Columns.Add(new DataColumn("UserName", typeof(string)));
    dt.Columns.Add(new DataColumn("DeptNo", typeof(string)));
    dt.Columns.Add(new DataColumn("DeptName", typeof(string)));
    DataRow drTemp = null;
    for (int i = 10; i <= 18; i++)
    {
    drTemp = dt.NewRow();
    drTemp["ID"] = i;
    drTemp["UserName"] = "姓名" + i.ToString();

    if (i < 15)
    {
    drTemp["DeptNo"] = "0001";
    drTemp["DeptName"] = "人事部";
    }
    else
    {
    drTemp["DeptNo"] = "0002";
    drTemp["DeptName"] = "生产部";
    }
    dt.Rows.Add(drTemp);
    }

    Console.WriteLine("分组前:");
    foreach (DataRow row in dt.Rows)
    {
    Console.WriteLine(string.Format("{0} {1} {2} {3} ", row.ItemArray));
    }
    Console.WriteLine("");

    Console.WriteLine("分组后:");

    //Linq分组查询,并按分组显示人员明细
    var query = from g in dt.AsEnumerable()
    group g by new { t1 = g.Field<string>("DeptNo"), t2 = g.Field<string>("DeptName") } into companys
    select new { DeptNo = companys.Key.t1, DeptName = companys.Key.t2, StallInfo = companys };

    foreach (var userInfo in query)
    {
    System.Collections.Generic.List<DataRow> dataRows = userInfo.StallInfo.ToList();

    Console.WriteLine(string.Format("{0}({1})人员名单: ", userInfo.DeptName, userInfo.DeptNo));
    foreach (System.Data.DataRow dr in dataRows)
    {
    Console.WriteLine(string.Format("{0} {1} ", dr.ItemArray));
    }
    }
    Console.ReadLine();
    }

  • 相关阅读:
    正则如何匹配div下的所有<li>标签?
    日历
    生成一定数量的不重复随机数
    PHP微信红包的算法实现探讨
    Flask 快速使用 —— (1)
    Django rest framework(8)---- 视图和渲染器
    Django 组件之 ----- content-type
    Django rest framework(7)----分页
    Django rest framework(6)----序列化(2)
    Django rest framework(5)----解析器
  • 原文地址:https://www.cnblogs.com/yangpeng-jingjing/p/9087671.html
Copyright © 2011-2022 走看看