Нельзя ли иметь условный оператор в выражении лямбда в ForEach?
List<string> items = new List<string>{"Item 1", "Item 2", "Item I Care About"};
string whatICareAbout = "";
// doesn't compile :(
items.ForEach(item => item.Contains("I Care About") ?
whatICareAbout += item + "," : whatICareAbout += "");
Ошибка компиляции → "В качестве оператора можно использовать только присваивание, вызов, приращение, декремент и новые объектные выражения
Попытка использовать нормальный, если не работает:
// :(
items.ForEach(item => if (item.Contains("I Care About")) {whatICareAbout += item + ", ";}
Просто невозможно?