使用 VB.net 对对象列表进行排序

Sorting a list of objects with VB.net

我是编码新手,虽然我在 Whosebug 上找到了应该解决我的情况的示例,但我很难理解语法,因此无法将示例转换为我的需要。

所以我有一个包含 Outlook MSG 文件的文件夹,我希望按 'Sent date' 顺序处理这些文件。所以我要做的是将它们加载到列表中,然后按日期对它们进行排序。

这可能是一种愚蠢的做法,但我想如果我创建一个 'class' 包含文件名和每条消息的日期,我可以:将它们添加到列表中,对其进行排序然后处理列表。

所以我的 class 看起来像这样:

Class sMSG
    Public sFilename As String
    Public mDate As Date
End Class

我对列表进行排序的代码(修改自 Whosebug 示例)如下所示:

            Dim ordered = From obj In SortedList
            OrderBy(obj.mdate Ascending)
            SortedList = ordered.ToList()

它生成错误:BC32017: 逗号、')' 或预期的有效表达式延续。

我不熟悉这种编码风格,无法弄清楚哪里出错了。

如有任何帮助,我们将不胜感激,但请用一个彻头彻尾的白痴都能理解的术语来解释,因为这几乎就是我现在的总结!

        SortedList = (From obj In SortedList Select obj Order By obj.mDate Ascending).ToList()
    'or
    SortedList = SortedList.OrderBy(Function(d) d.mDate)