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

Объединить свойства строки объекта с лямбдой

Пожалуйста, обратите внимание на следующее:

public class MyObject
{
   public bool B;
   public string Txt;
}

List<MyObject> list; //list of a bunch of MyObject 

С lambda-выражением, как я могу создать строку, состоящую из значений, разделенных запятыми для Txt этих объектов, где B истинно?

Спасибо.

4b9b3361

Ответ 1

для .net 3.5:

string.Join(",", list.Where(o => o.B).Select(o => o.Txt).ToArray())

для .net 4.0:

string.Join(",", list.Where(o => o.B).Select(o => o.Txt))

Ответ 2

string myString = string.Join(",", list.Where(x => x.B).Select(x=>x.Txt));

Ответ 3

var strFinal = "";
myList.ForEach(pq => strFinal += ", " + pq.ItemId);