首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于类属性的vb.net排序列表( T)

基于类属性的vb.net排序列表( T)
EN

Stack Overflow用户
提问于 2016-04-11 13:13:37
回答 1查看 1.6K关注 0票数 1

我目前正在进行一个项目,该项目实现了List(of T)的使用。我在试着整理名单。

集合基于PDF_Document类。

代码语言:javascript
复制
Public Class PDF_Document
    Public FullFilePath As String
    Public Property Size As String
    Public Property DocNumber As String
    Public Property Sequence As String
    Public Property Revision As String
End Class

当集合被填充时,它应该根据序列号对集合进行排序。001, 002, 003, 004, ...

但是,如何根据该属性对集合进行排序呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-11 13:19:17

你为什么要存储这样一个数字,如字符串?如果你想播放用前导零格式化的数字,当你播放它时,格式化它,f.e。使用sequence.ToString("D3"),但不要将其存储为字符串。

如果要对原始列表进行排序,可以使用List(Of T).Sort

代码语言:javascript
复制
pdfList.Sort(Function(pdf1, pdf2)
                 Return pdf1.Sequence.CompareTo(pdf2.Sequence)
             End Function)

如果不想修改原始列表,可以使用LINQ:

代码语言:javascript
复制
Dim ordered = From pdf In pdfList Order By pdf.Sequence

您可以使用ToList,F.E.创建一个新的列表:

代码语言:javascript
复制
Dim orderedPdfList = ordered.ToList()

否则,您总是必须将字符串解析为Int32

代码语言:javascript
复制
Dim ordered = From pdf In pdfList Order By Int32.Parse(pdf.Sequence)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36549773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档