【问题标题】:Concatenate string properties of an object with lambda用 lambda 连接对象的字符串属性
【发布时间】: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 为真?

谢谢。

【问题讨论】:

    标签: linq c#-4.0 lambda


    【解决方案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))
    

    【讨论】:

    • 使用 .net 4,您不需要 .ToArray()
    • 我需要这个,但对于 Visual Basic .net
    • @Luis String.Join(",", list.Where(Function(x) x.B).Select(Function(x) x.Txt))
    【解决方案2】:
    string myString = string.Join(",", list.Where(x => x.B).Select(x=>x.Txt));
    

    【讨论】:

      【解决方案3】:
      var strFinal = "";
      myList.ForEach(pq => strFinal += ", " + pq.ItemId);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-10-01
        • 1970-01-01
        • 2016-08-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-04
        • 1970-01-01
        相关资源
        最近更新 更多