我有一个包含界面项目的列表IGrid
(我创建了它)
public interface IGrid
{
RowIndex { get; set; }
ColumnIndex { get; set; }
}
我想创建一个将列表分隔为多个列表的方法List>
基于 RowIndex 属性
所以我写道:
public List<List<IGrid>> Separat(List<IGrid> source)
{
List<List<IGrid>> grid = new List<List<IGrid>>();
int max= source.Max(c => c.RowIndex);
int min = source.Min(c => c.RowIndex);
for (int i = min; i <= max; i++)
{
var item = source.Where(c => c.RowIndex == i).ToList();
if (item.Count > 0)
grid.Add(item);
}
return grid;
}
}
有什么更好的方法来做到这一点?