使用动态Linq的动态分组多列聚合 使用系统; 使用System.Collections.Generic; 使用System.Linq; 使用系统文本; 公共课程 { 静态void Main(字符串[]参数) { //一些样本数据 List lstgrplements=新列表(); lstgreplements.Add(新的聚合组合{Name=“Mike”,CITY=“Tallahassee”,STATE=“FL”,value=-3.12M}); 添加(新的聚合组合{Name=“Mike”,CITY=“Tallahassee”,STATE=“FL”,value=6.57M}); lstgreplements.Add(新的聚合组合{Name=“Steve”,CITY=“Tallahassee”,STATE=“FL”,value=-7.34M}); lstgreplements.Add(新的聚合组合{Name=“Steve”,CITY=“Tallahassee”,STATE=“FL”,value=54.64M}); 添加(新的聚合组合{Name=“Steve”,CITY=“Orlando”,STATE=“FL”,value=-1093M}); 添加(新的聚合组合{Name=“Steve”,CITY=“Orlando”,STATE=“FL”,value=235.09M}); 添加(新的聚合组{Name=“Mike”,CITY=“Orlando”,STATE=“NY”,value=429.34M}); 添加(新的聚合组合{Name=“Mike”,CITY=“Orlando”,STATE=“NY”,value=-67.12M}); //将列表转换为IEnumerable。 IEnumerable enumgrements=lstgrements; } } 公共类聚合组合 { 公共字符串名称{get;set;} 公共字符串CITY{get;set;} 公共字符串状态{get;set;} 公共十进制值{get;set;}
} 如何使用动态Linq实现IEnumerable到groupby(城市和州)的动态数据聚合(基于值)。城市和州列是示例,但可以在运行时动态地对多个列进行分组。我希望输出为聚合值字段使用动态Linq的动态分组多列聚合 使用系统; 使用System.Collections.Generic; 使用System.Linq; 使用系统文本; 公共课程 { 静态void Main(字符串[]参数) { //一些样本数据 List lstgrplements=新列表(); lstgreplements.Add(新的聚合组合{Name=“Mike”,CITY=“Tallahassee”,STATE=“FL”,value=-3.12M}); 添加(新的聚合组合{Name=“Mike”,CITY=“Tallahassee”,STATE=“FL”,value=6.57M}); lstgreplements.Add(新的聚合组合{Name=“Steve”,CITY=“Tallahassee”,STATE=“FL”,value=-7.34M}); lstgreplements.Add(新的聚合组合{Name=“Steve”,CITY=“Tallahassee”,STATE=“FL”,value=54.64M}); 添加(新的聚合组合{Name=“Steve”,CITY=“Orlando”,STATE=“FL”,value=-1093M}); 添加(新的聚合组合{Name=“Steve”,CITY=“Orlando”,STATE=“FL”,value=235.09M}); 添加(新的聚合组{Name=“Mike”,CITY=“Orlando”,STATE=“NY”,value=429.34M}); 添加(新的聚合组合{Name=“Mike”,CITY=“Orlando”,STATE=“NY”,value=-67.12M}); //将列表转换为IEnumerable。 IEnumerable enumgrements=lstgrements; } } 公共类聚合组合 { 公共字符串名称{get;set;} 公共字符串CITY{get;set;} 公共字符串状态{get;set;} 公共十进制值{get;set;},linq,Linq,} 如何使用动态Linq实现IEnumerable到groupby(城市和州)的动态数据聚合(基于值)。城市和州列是示例,但可以在运行时动态地对多个列进行分组。我希望输出为聚合值字段 谢谢,Ashutosh。解决方案是使用我的产品。通过指定维度和度量表达式定义多维数据集,并结合使用QueryByCube和Select计算聚合值 using System; using System.Collections.Generic; using System.Linq; using System.T
谢谢,Ashutosh。解决方案是使用我的产品。通过指定维度和度量表达式定义多维数据集,并结合使用
QueryByCube
和Select
计算聚合值
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
public class Program
{
static void Main(string[] args)
{
// some sample data
List<AggregateGrouping> lstgrpelements = new List<AggregateGrouping>();
lstgrpelements.Add(new AggregateGrouping{ Name = "Mike", CITY= "Tallahassee", STATE= "FL", value=-3.12M });
lstgrpelements.Add(new AggregateGrouping{ Name = "Mike", CITY= "Tallahassee", STATE= "FL", value=6.57M });
lstgrpelements.Add(new AggregateGrouping{ Name = "Steve", CITY= "Tallahassee", STATE= "FL", value=-7.34M });
lstgrpelements.Add(new AggregateGrouping{ Name = "Steve", CITY= "Tallahassee", STATE= "FL", value=54.64M });
lstgrpelements.Add(new AggregateGrouping{ Name = "Steve", CITY= "Orlando", STATE= "FL", value=-10.93M });
lstgrpelements.Add(new AggregateGrouping{ Name = "Steve", CITY= "Orlando", STATE= "FL", value=235.09M });
lstgrpelements.Add(new AggregateGrouping{ Name = "Mike", CITY= "Orlando", STATE= "NY", value=429.34M });
lstgrpelements.Add(new AggregateGrouping{ Name = "Mike", CITY= "Orlando", STATE= "NY", value=-67.12M });
// Converts to list to iEnumrable.
IEnumerable<AggregateGrouping> enumgrpelements = lstgrpelements;
}
}
Public Class AggregateGrouping
{
public string Name { get; set; }
public string CITY{ get; set; }
public string STATE{ get; set; }
public decimal value{ get; set; }