对由ObjectDataSource填充的DropdownLIst进行排序

时间:2013-08-14 17:10:31

标签: c# .net

我正在从ObjectDataSource填充DropdownLIst。 ObjectDataSource从服务中获取它的值。该服务提供未分类的结果。有没有办法在数据绑定到DropdownList之前按DataTextField排序?我觉得应该有一种方法在客户端这里做到这一点,但我不知道如何。建议好吗? (.net 4.5)

        <asp:DropDownList ID="AffiliationDropDownList" runat="server"
            ClientIDMode="Static" Width="200px" 
            DataSourceID="AffiliationObjectDataSource" 
            DataTextField="AffiliateName" 
            DataValueField="AffiliateID" 
            AppendDataBoundItems="true" 
            AutoPostBack="false" >
            <asp:ListItem Text="All Affiliations" Value="" />
        </asp:DropDownList>
        <asp:ObjectDataSource runat="server" ID="AffiliationObjectDataSource" 
            SelectMethod="RetrieveActiveAffiliations" 
            TypeName="OnlineVolunteerApplication.Data.VolunteerService.VolunteerServiceClient" >
        </asp:ObjectDataSource>

2 个答案:

答案 0 :(得分:1)

你可以在select方法RetrieveActiveAffiliations中这样做。您可以看到详细信息here

DataView dv = new DataView(yourtable);
dv.Sort = "id asc"; //your sort expression

答案 1 :(得分:0)

您可以尝试这样做: -

DataView defaultView = dataSource.Tables[0].DefaultView;
DataTable dt = getData();
dt.DefaultView.Sort= "UserName DESC";