zoukankan      html  css  js  c++  java
  • DataTable 中,应用Linq文

    Linq文通常用于代替SQL文进行数据查询。其简洁和舒服的表达形式,深受本人喜爱。

    最近在普通的对象数据操作时,也用类似的方法进行操作。

     var sumRows = dt.Copy().Select().ToList().GroupBy(m =>
                        new { key1 = m["JIGYOCD"].ToString(), key2 = m["NYUSYUYMD"].ToString(), key3 = m["TELNO"].ToString() })
                        .ToList();
    
                dt.Clear();
    
                sumRows.ForEach(m =>
                {
                    DataRow row = dt.NewRow();
    
                    row.ItemArray = m.First().ItemArray;
                    row["KOGUTI"] = m.Sum(x => Convert.ToInt32(x["KOGUTI"].ToString()));
                    row["SIHARAIJYURYO"] = m.Sum(x => Convert.ToDecimal(x["SIHARAIJYURYO"].ToString()));
                    row["UNSORYO"] = m.Sum(x => Convert.ToDecimal(x["UNSORYO"].ToString()));
                    row["KYORI"] = m.Sum(x => Convert.ToInt32(x["KYORI"].ToString()));
                    row["KEISANUNTIN"] = m.Sum(x => Convert.ToDecimal(x["KEISANUNTIN"].ToString()));
                    row["SAGAKU"] = m.Sum(x => Convert.ToDecimal(x["SAGAKU"].ToString()));
                    dt.Rows.Add(row);
    
                });
    
                dt.AcceptChanges();
    View Code

    var sumRows = dt.Copy().Select().ToList().GroupBy(m =>
    new { key1 = m["JIGYOCD"].ToString(), key2 = m["NYUSYUYMD"].ToString(), key3 = m["TELNO"].ToString() })
    .ToList();

    dt.Clear();

    sumRows.ForEach(m =>
    {
    DataRow row = dt.NewRow();

    row.ItemArray = m.First().ItemArray;
    row["KOGUTI"] = m.Sum(x => Convert.ToInt32(x["KOGUTI"].ToString()));
    row["SIHARAIJYURYO"] = m.Sum(x => Convert.ToDecimal(x["SIHARAIJYURYO"].ToString()));
    row["UNSORYO"] = m.Sum(x => Convert.ToDecimal(x["UNSORYO"].ToString()));
    row["KYORI"] = m.Sum(x => Convert.ToInt32(x["KYORI"].ToString()));
    row["KEISANUNTIN"] = m.Sum(x => Convert.ToDecimal(x["KEISANUNTIN"].ToString()));
    row["SAGAKU"] = m.Sum(x => Convert.ToDecimal(x["SAGAKU"].ToString()));
    dt.Rows.Add(row);

    });

    dt.AcceptChanges();

    Love it, and you live without it
  • 相关阅读:
    后台跨域(CORS)
    golang 处理TCP粘包问题
    使用axios 发送ajax 下载文件
    Golang:在Redigo的RedisPool上选择DB
    puppeteer添加代理
    mongodb 权限操作
    alpine下安装icu-dev
    golang 导出CSV文件中文乱码的问题
    shell笔记
    Convert rune to int
  • 原文地址:https://www.cnblogs.com/tomclock/p/6087870.html
Copyright © 2011-2022 走看看