1

我正在尝试对数据进行排序,但是当我从一页跳转到另一页时,名称并没有得到排序。

return new dao_StudentGroupStudents().GetNewStudentbyGroup(bureauId, search, groupId, currentPage, pageSize, out totalCount);

    /// <summary>
    /// Get All the students from that Bureau.
    /// </summary>

    public DataSet GetAllStudentGroupByBureau(int? GroupId, int? BureauID)
    {
        DataSet ds = new dao_StudentGroup().GetDataSet(null, null, BureauID);
        ds.Tables[0].DefaultView.Sort = "grouptitle asc";
        return ds;
    }

我正在输入这个,现在我得到找不到列 columnName。

公共数据集 GetAllStudentGroupByBureau(int?GroupId, int? BureauID) { DataSet ds = new dao_StudentGroup().GetDataSet(null, null, BureauID);

ds.Tables[0].DefaultView.Sort = "columnName ASC";

DataTable dt = ds.Tables[0].DefaultView.ToTable();

return ds;

}

4

4 回答 4

5

尝试这个:

DataSet ds = new dao_StudentGroup().GetDataSet(null, null, BureauID);
ds.Tables[0].DefaultView.Sort = "grouptitle asc";
ds.Tables[0] = ds.Tables[0].DefaultView.ToTable();
return ds;

更新

你可以简单地这样做:

public DataSet GetAllStudentGroupByBureau(int ? GroupId, int ? BureauID) 
{
    DataSet ds = new dao_StudentGroup().GetDataSet(null, null, BureauID);

    ds.Tables[0].DefaultView.Sort = "grouptitle asc";        
    DataTable dt = ds.Tables[0].DefaultView.ToTable();
    ds.Tables[0].Rows.Clear();
    foreach (DataRow row in dt.Rows)
       ds.Tables[0].Rows.Add(row.ItemArray);

    return ds;
}
于 2013-03-25T15:34:25.817 回答
2

您可以尝试以下方法。记住,你不能给 ds.Table[] 赋值。因此,您需要创建一个新数据表并将其添加到新的或现有的数据集

    ds.Tables[0].DefaultView.Sort = "columnName ASC";

    DataTable dt = ds.Tables[0].DefaultView.ToTable();
于 2013-03-26T06:47:29.407 回答
0

数据视图 dv = ds.Tables[0].DefaultView;

dv.Sort = "grouptitle ASC"; 

ds = dv.ToTable();  

试试这些

默认它来自 ds.table[0] 无需提及它

于 2013-07-15T06:12:48.003 回答
0

你可以试试这个:

    //convert DataSet table to DataView  
    DataView dv = ds.Tables[0].DefaultView; 

    //apply the sort   
    dv.Sort = "grouptitle ASC"; 

    //save back into our dataset  
    ds.Tables[0] = dv.ToTable();  
于 2013-03-25T15:51:42.763 回答