【问题标题】:Sorting a list of objects with VB.net使用 VB.net 对对象列表进行排序
【发布时间】:2021-11-26 21:32:04
【问题描述】:

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

所以我有一个文件夹,其中包含我希望按“发送日期”顺序处理的 Outlook MSG 文件。所以我要做的就是将它们加载到一个列表中,然后按日期对它们进行排序。

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

所以我的班级看起来像这样:

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

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

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

它会产生错误:BC32017: Comma, ')', or a valid expression continuation expected.

我不熟悉这种编码风格,不知道哪里出错了。

任何帮助都将不胜感激,但请用一个完整的白痴会理解的术语来解释它,因为这就是我目前的总结!

【问题讨论】:

  • 请给我们你提到的例子的链接。有了这些信息,我们或许可以给出更好的答案。

标签: vb.net sorting


【解决方案1】:
        SortedList = (From obj In SortedList Select obj Order By obj.mDate Ascending).ToList()
    'or
    SortedList = SortedList.OrderBy(Function(d) d.mDate)

【讨论】:

  • 非常感谢 Wojciech,这不仅有效,而且非常优雅:-)
  • @MaxHeadroom 请点击答案左侧的复选标记(勾号)接受答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多