【发布时间】:2011-04-28 17:35:28
【问题描述】:
请考虑以下几点:
public class MyObject
{
public bool B;
public string Txt;
}
List<MyObject> list; //list of a bunch of MyObject's
使用 lambda 表达式,如何生成由这些对象的 Txt 的逗号分隔值组成的字符串,其中 B 为真?
谢谢。
【问题讨论】:
请考虑以下几点:
public class MyObject
{
public bool B;
public string Txt;
}
List<MyObject> list; //list of a bunch of MyObject's
使用 lambda 表达式,如何生成由这些对象的 Txt 的逗号分隔值组成的字符串,其中 B 为真?
谢谢。
【问题讨论】:
.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))
【讨论】:
.ToArray()。
String.Join(",", list.Where(Function(x) x.B).Select(Function(x) x.Txt))
string myString = string.Join(",", list.Where(x => x.B).Select(x=>x.Txt));
【讨论】:
var strFinal = "";
myList.ForEach(pq => strFinal += ", " + pq.ItemId);
【讨论】: