数据集排序
本文关键字:排序 数据集 | 更新日期: 2023-09-27 18:37:13
在DataTable
我可以排序
dataTable.DefaultView.Sort = "SortField DESC";
我从数据库中得到一个DataSet
,我想知道我是否可以对DataSet
进行排序,就像我在DataTable
中如何做到这一点一样。
您仍然可以从数据集访问数据表,如下所示,
ds.Tables[0].DefaultView.Sort =" criterian";
希望这有帮助。
DataView view = ds.Tables[0].DefaultView;
view.Sort = "SortField DESC";
http://msdn.microsoft.com/en-US/library/1ay5y4w0(v=vs.71).aspx
http://social.msdn.microsoft.com/Forums/nl/netfxbcl/thread/adbd95cd-49d1-483d-b2b2-4b696a66e9a6
按如下方式从DataSet
访问DataTable
,
ds.Tables[0].DefaultView.Sort = "SortField DESC";
希望这有帮助。
对于高级排序需求,您可能希望使用 LINQ,如此处所述。基本上,它允许使用 System.Data.DataTableExtensions.AsDataFiew 扩展方法从 LINQ 查询创建 DataView。
或者,如果您同意(甚至可能更喜欢)使用 IEnumerable您可以使用 System.Data.DataTableExtensions.AsEnumerable 扩展方法。例如:
var enumerable = dataSet.Tables[0].AsEnumerable()
.OrderBy(x => x.Field<string>("ColumnName")
.ThenByDescending(x => x.Field<int?>("OtherColumnName")??0);
从 DataSet 对象,您可以访问所有要访问的数据表。
试试这个:
DataDet.Tables[0].DefaultView.Sort = "sort criteria";
DataSet fileTransferDetail = null;//Data to be sorted.
DataSet result = null;//Declare a dataSet to be filled.
//Sort data.
fileTransferDetail.Tables[0].DefaultView.Sort = "ID DESC";
//Store in new Dataset
result.Tables.Add(fileTransferDetail.Tables[0].DefaultView.ToTable());
尝试以下代码。
DataView dv = new DataView();
dv = ds.Tables[0].DefaultView;
dv.Sort=value;