【问题标题】:Simple linq question: using linq to get an array of properties简单的 linq 问题:使用 linq 获取属性数组
【发布时间】:2010-05-17 07:29:56
【问题描述】:

假设我们有一个简单的类

public class Foo
{
    public string FooName;
}

现在我们想做一些简单的工作。

public void SomeCallerMethod(List<Foo> listOfFoos)
{
    string[] fooNames = listOfFoo. // What to do here?
}

如果我什至知道要调用什么方法,我可能会找到其余的部分。

【问题讨论】:

    标签: c# linq-to-objects


    【解决方案1】:

    您想将您的类列表转换为字符串数组。理想的方法是Select,它对可枚举的每个元素进行操作,并根据您返回的类型构建一个新的可枚举。

    您需要在返回名称的 select 方法中放入一个 lambda 表达式,即“为每个元素选择名称”。

    然后您需要将输出转换为数组。

    string[] fooNames = listOfFoos.Select(foo => foo.FooName).ToArray();
    

    或者,使用其他语法:

    string[] fooNames = (from foo in listOfFoos
                         select foo.FooName).ToArray();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-23
      • 1970-01-01
      • 2011-02-08
      相关资源
      最近更新 更多