¿Qué son ‘cierres’ en C #?

Duplicar

Cierres en .NET

¿Cuáles son los cierres en C #?

Un cierre en C # toma la forma de un método delegado / anónimo en línea. Se adjunta un cierre a su método principal, lo que significa que las variables definidas en el cuerpo del método principal se pueden referenciar desde dentro del método anónimo. Hay una gran publicación en el blog aquí al respecto.

Ejemplo

public Person FindById(int id) { return this.Find(delegate(Person p) { return (p.Id == id); }); } 

También puedes echar un vistazo a los blogs de Martin Fowler o Jon Skeet . Estoy seguro de que podrá obtener un desglose más “en profundidad” de al menos uno de ellos …