筛选与投影
var vueNotes = notes
.Where(n => n.Topic == "Vue")
.Select(n => n.Title)
.ToList();
排序与分组
var grouped = notes
.OrderByDescending(n => n.UpdatedAt)
.GroupBy(n => n.Topic);
自己记着的习惯
- 链不要写太长,中间结果可以拆成有意义的临时变量。
- 需要多次遍历时,及时
ToList(),避免重复枚举。 - 读起来别扭就改回普通循环,不必为了 LINQ 而 LINQ。
LINQ 对我最大的帮助,是让「筛选 / 转换 / 聚合」的意图更直白。
它是工具,不是目标。