【问题标题】:Convert List (Of List (Of Class)) To List(Of Class)将列表(列表(类))转换为列表(类)
【发布时间】:2015-08-21 10:13:20
【问题描述】:

我有一个类,它存储在字典内的列表中,如下所示:-

Public Class MyClass
    Public something As Integer
    Public something_else As Double
End Class

Dim my_dictionary As Dictionary (Of Integer, List (Of MyClass))

然后我需要提取其中一些列表并将它们转换为单个列表。我可以像这样提取必要的列表:-

Dim list_of_lists As List (Of List (Of MyClass)) =
    From dict_item As KeyValuePair (Of Integer, List (Of MyClass) In my_dictionary
        Where dict_item.Key < some_value
        Select dict_item.Value).ToList

但无法将这些转换为

Dim list_of_items As List (Of MyClass) = ...er...

我已经使用SelectMany 查看了herehere 的问题,但我无法使用SelectMany 进行编译,而且C# 的用法(和解释)有点简洁。

使用

(From one_list In list_of_lists
    Select one_list.FindAll(Function(x) True)).ToList

只是创建另一个列表列表。

有人知道怎么做吗?

【问题讨论】:

  • SelectMany
  • 他已经在问题中提到了SelectMany。所以他实施起来有问题。

标签: vb.net linq list


【解决方案1】:
Dim list_of_items As List (Of MyClass) = list_of_lists.SelectMany(Function(list) list).ToList()

在查询语法中:

Dim items = From list In list_of_lists
            From item In list
            Select item
Dim list_of_items As List (Of MyClass) = items.ToList()

【讨论】:

    猜你喜欢
    • 2018-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-30
    相关资源
    最近更新 更多