如何将这个双foreach循环转换为lambdas?

dot*_*00b 3 c# linq foreach lambda

这是一种方法,这些foreach循环只有一个 lambda表达式?

    private int getNextEventId()
    {
        int numOfEvents = 0;

        foreach (MonthModel eventMonth in eventsForAllMonths)
        {
            foreach (DayModel eventDay in eventMonth.AllDays)
            {
                numOfEvents += eventDay.CalEvents.Count;
            }
        }

        return numOfEvents + 1;
    }
Run Code Online (Sandbox Code Playgroud)

Jus*_*ner 15

int numOfEvents = eventsForAllMonths.SelectMany(m => m.AllDays)
                                    .Select(d => d.CalEvents.Count)
                                    .Sum();
Run Code Online (Sandbox Code Playgroud)