如何将集合排序到vb.net中?

如何将集合排序到vb.net中?,.net,vb.net,.net,Vb.net,我想将一个集合排序/排序到Visual Basic中,但目前运气不佳。 主要标准是不要将集合更改为其他形状,如列表或字典 我的代码: Dim colCols As Collection Dim FinalCollection As New Collection colCols = New Collection colCols.Add(2572, "MyID") FinalCollection.Add(colCols) colCols = New

我想将一个集合排序/排序到Visual Basic中,但目前运气不佳。 主要标准是不要将集合更改为其他形状,如列表或字典

我的代码:

    Dim colCols As Collection
    Dim FinalCollection As New Collection

    colCols = New Collection
    colCols.Add(2572, "MyID")
    FinalCollection.Add(colCols)

    colCols = New Collection
    colCols.Add(2576, "MyID")
    FinalCollection.Add(colCols)

    colCols = New Collection
    colCols.Add(2573, "MyID")
    FinalCollection.Add(colCols)
我想用MyID来订购这个系列,最后的顺序是:2572、2573和2576

注意:FinalCollection正是这个形状,不可能更改代码,因为它不在我的应用程序中。因此,FinalCollection是从另一个应用程序收到的,我想将该集合订购到我的应用程序中

我尝试过这个,但运气不好:

Dim sortedList = From item In FinalCollection Order By item.Value("MyID")
这可能对你有帮助。(即使我也不同意这种做法)


您无法将
最终集合
的内容读入自己的
列表
词典
分类词典
、或
分类集
,这是vba还是vb.net?不可能两者都有。很完美,现在我把所有的东西都按正确的顺序放好了。谢谢。正如我在回答中所说,使用具有动态类型的集合不是一个好方法。不过,我很高兴听到您已经解决了您的问题。:)
Dim newCollection As IOrderedEnumerable(Of Object) = From item In FinalCollection
                                                         Order By CType(item, Collection).Item("MyID")


For Each item As Collection In newCollection
    Console.WriteLine("Order of : " & item.Item("MyID").ToString)
Next