Подтвердить что ты не робот

Получить список свойств из списка объектов

В настоящее время я использую цикл foreach для возврата списка свойств object.

 class X
 {
     List<X> Z = GetXlist();
     List<String> r = new List<String>();

     foreach (var z in Z)
     {
         r.Add(z.A);
     }

     return r;
}

Есть ли способ сократить это, так что мне не нужно писать цикл foreach?

4b9b3361

Ответ 1

LINQ - это ответ. Вы можете использовать его для "проекта" из вашей коллекции объектов в другую коллекцию - в этом случае - совокупность значений свойств объекта.

List<string> properties = objectList.Select(o => o.StringProperty).ToList();

Ответ 2

Вы можете использовать LINQ:

List<X> Z = GetXlist();

List<String> r = Z.Select(z => z.A).ToList();

return r;

Или просто,

return GetXlist().Select(z => z.A).ToList();

Узнайте больше о LINQ. Это очень полезно.