0

我有一个数据集,它保存着我从数据库表中提取的数据。控制器和模型的相关摘录如下所示

控制器:

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 列排序。为此,我将数据放在数据视图中并使用了排序方法。然后我将数据视图而不是数据集传递到视图中。但是,当我这样做时,我最终会得到与以前完全相同的未排序表。我究竟做错了什么?

控制器:

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>
4

1 回答 1

0

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

于 2012-07-16T11:11:53.553 回答