示例, linq分组
public class HIS_CLIREGISTER : BaseModel
{
private String _FBCODE;
[StringLength(8)]
/// <summary>
/// 费别
/// </summary>
public String FBCODE
{
get { return _FBCODE; }
set
{
if (_FBCODE != value && RowState == RowStateFlags.ROW_Original)
{
RowState = RowStateFlags.ROW_Edited;
}
_FBCODE = value;
}
}
private String _USERNAME;
[StringLength(20)]
/// <summary>
/// 操作人
/// </summary>
public String USERNAME
{
get { return _USERNAME; }
set
{
if (_USERNAME != value && RowState == RowStateFlags.ROW_Original)
{
RowState = RowStateFlags.ROW_Edited;
}
_USERNAME = value;
}
}
private decimal _REGFEE;
/// <summary>
/// 挂号费
/// </summary>
public decimal REGFEE
{
get { return _REGFEE; }
set
{
if (_REGFEE != value && RowState == RowStateFlags.ROW_Original)
{
RowState = RowStateFlags.ROW_Edited;
}
_REGFEE = value;
}
}
public string FBNAME { get; set; }
public decimal perOfTotal { get; set; }
}
List<HIS_CLIREGISTER> CLIREGISTERS = new List<HIS_CLIREGISTER>();
List<HIS_CLIREGISTER> items = reportDomain.GetRecordsCLIREGCost(frmcrt.StartDt.ToString("yyyy-MM-dd"), frmcrt.EndDt.ToString("yyyy-MM-dd"), ref errorMessage);//取得数据集
decimal Total = items.Sum(s => s.REGFEE);
//费别分组
var itemsGB = from a in items.GroupBy(g => g.FBCODE) select new { a.Key, FBNAME = a.Max(m => m.FBNAME) };
foreach (var v in itemsGB)
{
List<HIS_CLIREGISTER> tmpItems = items.Where(w => w.FBCODE == v.Key).ToList();
//操作人分组
List<HIS_CLIREGISTER> itemsGB2 = (from a in tmpItems.GroupBy(g => g.USERNAME)
select new HIS_CLIREGISTER
{
FBCODE = v.Key,
USERNAME = a.Key,
FBNAME = v.FBNAME,
REGFEE = a.Sum(s => s.REGFEE),
perOfTotal = a.Sum(s => s.REGFEE) / Total
}).ToList();
CLIREGISTERS.AddRange(itemsGB2);
}
示例, linq分组的更多相关文章
- Linq分组功能
Linq在集合操作上很方便,很多语法都借鉴自sql,但linq的分组却与sql有一定的区别,故整理发布如下. 1. Linq分组 分组后以Key属性访问分组键值. 每一组为一个IEnumberAbl ...
- Linq分组操作之GroupBy,GroupJoin扩展方法源码分析
Linq分组操作之GroupBy,GroupJoin扩展方法源码分析 一. GroupBy 解释: 根据指定的键选择器函数对序列中的元素进行分组,并且从每个组及其键中创建结果值. 查询表达式: var ...
- Linq分组,linq方法分组
Group在SQL经常使用,通常是对一个字段或者多个字段分组,求其总和,均值等. Linq中的Groupby方法也有这种功能.具体实现看代码: 假设有如下的一个数据集: 01.public class ...
- Linq分组查询统计
这里介绍Linq使用Group By和Count得到每个CategoryID中产品的数量,Linq使用Group By和Count得到每个CategoryID中断货产品的数量等方面. 学经常会遇到Li ...
- C# 泛型分组和Linq分组的异同
没什么好说的,因为用的到,所以作个记录, 代码如下: using System; using System.Collections.Generic; using System.Linq; using ...
- Dubbo -- 系统学习 笔记 -- 示例 -- 服务分组
Dubbo -- 系统学习 笔记 -- 目录 示例 想完整的运行起来,请参见:快速启动,这里只列出各种场景的配置方式 服务分组 当一个接口有多种实现时,可以用group区分. <dubbo:se ...
- c# linq 分组groupby
转载: https://www.cnblogs.com/cncc/p/9846390.html 一.先准备要使用的类: 1.Person类: class Person { public string ...
- linq分组求和_实体类和datatable
1.数据分组求合,分别用的实体类以及datatable来分组求合,还有分组求和之后的如何取值 //实体类版本 List<ProgramTimeModel> TotalAllList = G ...
- LINQ分组取出第一条数据
Person1: Id=, Name="Test1" Person2: Id=, Name="Test1" Person3: Id=, Name="T ...
随机推荐
- 通用导出excel
循环导出所有行和列 def export_excel(table_name): host,user,passwd,db='192.168.0.12','root','myjcyf','us_sys' ...
- ECMA Script 6_数组的扩展_扩展运算符
1. 扩展运算符 内部调用的是数据结构的 Iterator 接口, 因此只要具有 Iterator 接口的对象,都可以使用扩展运算符 ... 如 map,,,, [...arr] 扩展运算符(spre ...
- React组件传值
React的单向数据流与组件间的沟通. 首先,我认为使用React的最大好处在于:功能组件化,遵守前端可维护的原则. 先介绍单向数据流吧. React单向数据流: React是单向数据流,数据主要从父 ...
- 太原面经分享:如何在vue面试环节,展示你晋级阿里P6+的技术功底?
前言 一年一度紧张刺激的高考开始了,与此同时,我也没闲着,奔走在各大公司的前端面试环节,不断积累着经验,一路升级打怪. 最近两年,太原作为一个准二线城市,各大互联网公司的技术栈也在升级换代,假如你在太 ...
- Windows中使用ssh利用公钥登入远程服务器
方式:使用 Winscp 密钥登录 我们平时开发多会使用 ftp 来上传下载文件,尤其是很多 Linux 环境下. 其实 Linux 默认是不提供 ftp 的,需要你额外安装 FTP 服务 ...
- 十四、JavaWeb监听器
JavaWeb监听器 三大组件: l Servlet l Listener l Filter Listener:监听器 初次相见:AWT 二次相见:SAX 监听器: l 它是一个接口,内容由我们来实现 ...
- 九、JSP入门(2)
day12 JSP指令 1 JSP指令概述 JSP指令的格式:<%@指令名 attr1=”” attr2=”” %>,一般都会把JSP指令放到JSP文件的最上方,但这不是必须的. JSP中 ...
- 中文乱码总结之web乱码情景
情景1.当servlet返回js脚本时弹出框显示中文乱码: 解决:在servlet中加上response.setContentType(“text/html;charset=utf-8”); 情景2. ...
- UIAlertController中TextField的用法
这时候可以添加如下代码: [alertController addTextFieldWithConfigurationHandler:^(UITextField *textField) { // 可以 ...
- 单调栈+前缀和 || Nowcoder || 牛客小白月赛13 || 小A的柱状图
题面:小A的柱状图 题解:无 代码: #include<cstdio> #include<cstring> #include<iostream> #define l ...