作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要对数据表进行排序,但是按列排序会有所不同。
场景#1,DataTable1 应按“Column1”排序。
场景#2,DataTable2 应按“Column1, Column2”排序。
下面是我为此目的创建辅助函数的第一次尝试。这工作正常。
Private Sub SortDataTable(ByRef dataTable As DataTable, ByVal sortColumnNames As List(Of String))
'Validation (not shown here)
Dim sortOrder = String.Join(", ", sortColumnNames)
dataTable.DefaultView.Sort = sortOrder
dataTable = dataTable.DefaultView.Table
End Sub
Private Sub SortDataTable(ByRef dataTable As DataTable, ByVal sortColumnNames As List(Of String))
'Validation (not shown here)
dataTable.AsEnumerable().OrderBy(Function (row) row(sortColumnNames(0))).ThenBy(...)
End Sub
最佳答案
类似的东西:
Private Function SortDataTable(table As DataTable, ParamArray columns As String()) As DataTable
If columns.Length = 0 Then
Return table
End If
firstColumn = columns.First()
Dim result = table.AsEnumerable().OrderBy(Function(r) r(firstColumn))
For Each columnName As var In columns.Skip(1)
result = result.ThenBy(Function(r) r(columnName))
Next
Return result.AsDataView().ToTable()
End Function
DataTable SortDataTable(DataTable table, params string[] columns)
{
if (columns.Length == 0)
{
return table;
}
firstColumn = columns.First();
var result = table.AsEnumerable().OrderBy(r => r[firstColumn]);
foreach (var columnName in columns.Skip(1))
{
result = result.ThenBy(r => r[columnName]);
}
return result.AsDataView().ToTable();
}
关于vb.net - 当按列排序可能会有所不同时,使用 LINQ 对数据表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16691900/
java.lang.Throwable 的哪些子类可能被空语句抛出? 通过短语“空语句”,我指的是“无”、“分号”和“分号”: // .... A(); B(); C(); try { //
我是一名优秀的程序员,十分优秀!