Почему не работает код с Select()? - LINQ

Узнай цену своей работы

Формулировка задачи:

Вопрос очень краткий "Почему не работает?"
Листинг программы
  1. public class Program
  2. {
  3. public static void Main(string[] args)
  4. {
  5. 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});
  6.  
  7. foreach(var a in en_a)
  8. a.aaa = en_a.Where(x=>x.Name == "t3");
  9. foreach(var a in en_a)
  10. Console.WriteLine(a.aaa == null?"пусто":a.aaa.Count().ToString());
  11. }
  12. class A
  13. {
  14. public string Name {get;set;}
  15. public IEnumerable<A> aaa {get;set;}
  16. }
  17. }
Всё дела в Select-е, но я не понимаю почему именно.... Объясните плз. (если убрать select в строке инициализации то в консоле будут единички, а с ним "пусто")

Решение задачи: «Почему не работает код с Select()?»

textual
Листинг программы
  1. A[] arr = new [] {
  2.     new A { Name = "t1"},
  3.     new A { Name = "t2"},
  4.     new A { Name = "t3"},
  5.     new A { Name = "t4"}
  6. };
  7. foreach(var x in arr)
  8. {
  9.     var tempA = new A { Name = x.Name };
  10.     tempA.aaa = arr.Where(z => z.Name == "t3");
  11. }
  12.  
  13. foreach(var x in arr)
  14. {
  15.     var tempA = new A { Name = x.Name };
  16.     Console.WriteLine(tempA.aaa == null?"пусто":tempA.aaa.Count().ToString());
  17. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут