尝试在DataView中对数据进行排序但没有发生任何事情

时间:2012-07-16 11:02:21

标签: c# asp.net-mvc-3 razor dataset

我有一个DataSet,它保存了我从数据库表中提取的数据。控制器和型号的相关摘录见下文

控制器:

DataSet ds = new DataSet();
adapter.Fill(ds,currentIndex,(int)pageSize,"LD_USER_ROLE");                            
conn.Close();                  
return View(ds);

查看:

@using System.Data
@model System.Data.DataSet

<table>
@foreach (DataRow row in Model.Tables[0].Rows)
{
    <tr>            

        @foreach (DataColumn column in Model.Tables[0].Columns)
        {                
                    <td>@row[column]</td>                 
        }
</tr>        
}
</table>

我想更改代码,以便视图中生成的表将按USERNAME列进行排序。为此,我将数据放在数据视图中并使用sort方法。然后我将dataview传递给视图而不是数据集。当我这样做时,我最终得到与以前完全相同的未分类表。我做错了什么?

控制器:

DataSet ds = new DataSet();
adapter.Fill(ds,currentIndex,(int)pageSize,"LD_USER_ROLE");
DataView dv = ds.Tables[0].DefaultView;
dv.Sort = "USERNAME ASC";                            
conn.Close();                  
return View(dv);

查看:

@using System.Data
@model System.Data.DataView

<table>
@foreach (DataRow row in Model.Table.Rows)
{
    <tr>            

        @foreach (DataColumn column in Model.Table.Columns)
        {                
                    <td>@row[column]</td>                 
        }
</tr>        
}
</table>

1 个答案:

答案 0 :(得分:0)

在填充DataSet之前更好地对数据进行排序