用silverlight / c#编程。
假设我有一个列表,其中包含过去6个月每月接受/拒绝的销售数量(实时更新):
List<data> merge = new List<data>();
public class data
{
public string month { get; set; }
public string event_action_cd { get; set; }
public string quote_id { get; set; }
}
所以我的列表看起来像这样:
(Jan,接受,1
Jan,接受,2
Jan,拒绝,3
2月,接受,4 ......
我想返回一个汇总列表,其中包含月份名称和该月份接受的百分比。有一种优雅的方式吗?最困难的是弄清楚过去6个月的情况(因为它们每个月都在变化),然后我可能会为每次接受/拒绝运行一个带有计数器的循环。
答案 0 :(得分:0)
(from d in merge
group d by d.month into g
select new
{
Month = g.Key,
Total = g.Count,
Accepted = g.Count(x => x.event_action_cd =="accept")*100/g.Count
}).ToList()