我正在接管一些由离开我公司的人编写的代码。他写了以下内容,这让我完全不知道如何阅读/解释
public override IEnumerable<IEnumerable<ChangeContext>> GroupHistory(
SqlConnection connection, long seqNum, int batchSize)
{
var history = GetHistory(connection, seqNum);
LastSequenceNumber = history.LastSequenceNumber;
Timestamp = history.Timestamp;
// grouping by broker and compacting changes
return history.Changes.OrderBy(c => c.SequenceNumber).GroupBy(c => c.CtbID, (l, c) => c).ToList()
.Select(group => ConvertChanges(group));
}
我很困惑的是Groupby。第一部分是明确的 c => c.CtbID - 这是 CtbID 上的 groupby。我不明白的是 - (l, c) => c 这看起来像另一个有 2 个参数的 lambda?