C#:
var articles = Article
.OrderBy(x=> x.Name)
.Where(x=> x.Name.Contains(pattern))
.Select(x=>new {x.Name + " (article)"})
.ToList();
用 C# 编写这种方式很好,它被称为“方法连接”。事实上,我不记得他们是怎么称呼的,我在 Jon Skeet 的书中读到过。这个想法是每个方法都在一个新的行上,这在 C# 中是正常的。
鲁比呢?正常写吗:
articles = Article
.order(:name)
.where("name like ?","%#{pattern}%")
.map(&:name)
.map {|c| c << " (article)"}