Почему не работает код с Select()? - LINQ
Формулировка задачи:
Вопрос очень краткий "Почему не работает?"
Всё дела в Select-е, но я не понимаю почему именно....
Объясните плз. (если убрать select в строке инициализации то в консоле будут единички, а с ним "пусто")
public class Program
{
public static void Main(string[] args)
{
IEnumerable<A> en_a = new [] { new A { Name = "t1"}, new A { Name = "t2"}, new A { Name = "t3"}, new A { Name = "t4"} }.Select(x=>new A { Name = x.Name});
foreach(var a in en_a)
a.aaa = en_a.Where(x=>x.Name == "t3");
foreach(var a in en_a)
Console.WriteLine(a.aaa == null?"пусто":a.aaa.Count().ToString());
}
class A
{
public string Name {get;set;}
public IEnumerable<A> aaa {get;set;}
}
}Решение задачи: «Почему не работает код с Select()?»
textual
Листинг программы
A[] arr = new [] {
new A { Name = "t1"},
new A { Name = "t2"},
new A { Name = "t3"},
new A { Name = "t4"}
};
foreach(var x in arr)
{
var tempA = new A { Name = x.Name };
tempA.aaa = arr.Where(z => z.Name == "t3");
}
foreach(var x in arr)
{
var tempA = new A { Name = x.Name };
Console.WriteLine(tempA.aaa == null?"пусто":tempA.aaa.Count().ToString());
}