【问题标题】:getting array of arrays from List using lambda?使用 lambda 从 List 获取数组数组?
【发布时间】:2013-10-22 00:59:09
【问题描述】:

我正在尝试使用 Lambda 表达式从 List 中查询数据。下面是我的用户类

用户

 Id,Name,Password, EmailAddress

所需数据是一个数组数组,使用列表 Namepassword 中的两列。Select(c => c.LastUpdatedDate + "," + c.LastUpdatedDate ).ToArray();。结果会像下面这样:

[["Name1","***"],["Name2","+++"],["Name3","///"]]

请您指导并帮助我选择这个。

【问题讨论】:

    标签: c# .net c#-4.0 lambda


    【解决方案1】:

    您可以通过在 Linq Select 中创建一个新数组来做到这一点(我假设您想要一个对象数组,因为您有一个 int 和字符串):

    object[][] result = users.Select(user => new object[] { user.Id, user.Name }).ToArray();
    

    如果两列都是字符串,则语法几乎相同——只需将object[] 都替换为string[]

    string[][] result = users.Select(user => new string[] { user.Id, user.Name }).ToArray();
    

    【讨论】:

    • 谢谢,这对我很有帮助。请稍作修改,如果两列都是字符串怎么办。
    • +1。根据字段类型而不是user => new object[]...,您可以使用user => new string[]... 或仅使用user => new[]...
    • @Toubi 几乎一样,看我的编辑,还有 Alexei 的注释(隐式类型数组)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-10
    • 2021-11-08
    • 2012-02-22
    • 1970-01-01
    • 2018-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多