版权声明:本人的作品仅供研究目的,如果读者利用本人的作品从事其他行为,与本人无关 https://blog.csdn.net/oShuangYue12/article/details/82377457
nt maxcount = Model
.SelectMany(h => h.DetailList).OrderBy(h => h.DetailType)
.GroupBy(h => h.DetailType).Select(h => h.Count()).Max();
int Fitsetcount = Model.SelectMany(h => h.DetailList).OrderBy(h => h.DetailType)
.GroupBy(h => h.DetailType).FirstOrDefault().Count();
List<List<Model>> QuantumList= Model
.SelectMany(h => h.DetailList).OrderBy(h => h.DetailType)
.GroupBy(h => h.DetailType).Skip(1)
.Aggregate(Model.SelectMany(h => h.DetailList).OrderBy(h => h.DetailType)
.GroupBy(h => h.DetailType).FirstOrDefault().OrderBy(h=>h.FSeq)
.Select(h => new List<Model>() { h }).Union(System.Linq.Enumerable.Repeat(new List<Model>() { new Model() }, Math.Abs(maxcount - Fitsetcount)).ToList()),
(t, s) =>
t.Zip(s.OrderBy(h => h.FSeq).Select(h => new List<Model>() { h }).Union(System.Linq.Enumerable.Repeat(new List<Model>(){new Model()}, Math.Abs(maxcount - s.Count())).ToList()), (n, m) => n.Concat(m).ToList())
).ToList();