Solo por curiosidad, ¿por qué llamar a IEnumerable.ToList() en una Lista existente no devuelve la misma instancia? Lo mismo se aplica a IEnuerable.ToArray(). ¿No sería esto mejor desde el punto de vista del consumo de memoria?.NET ¿Por qué IEnumerable.ToList() en una Lista existente crea una nueva matriz
que corrieron la siguiente prueba rápida:
var things= new List<Thing>(new [] {new Thing(), new Thing()});
Console.WriteLine(things.GetHashCode());
things= things.ToList();
Console.WriteLine(things.GetHashCode());
y consigo diferentes instancias de objetos. ¿Por qué no simplemente las mismas instancias?
Me gusta la extensión, gracias. –