答案 0 :(得分:94)
C#中的closure采用内联委托/ anonymous method的形式。 closure附加到其父方法,这意味着可以在匿名方法中引用父方法体中定义的变量。这里有一个很棒的Blog Post。
实施例
public Person FindById(int id)
{
return this.Find(delegate(Person p)
{
return (p.Id == id);
});
}
您还可以查看Martin Fowler或Jon Skeet个博客。我相信你至少可以从其中一个中获得更多“深度”细分......