服务器端数据访问-》将SQL数据库中的数据排序

解决方案 »

  1.   

    jpyc(九品御厨-进军嵌入式) :在quickstart中有这个例子。能留个ID地址吗?
      

  2.   

    设置第二列(EndDay)得SortExpression为第一列得字段名,设置第三列的SortExpression为第一,二列
      

  3.   

    请按我的方式去实现,要比quickstart更灵活:
    前台aspx页面:
    <asp:DataGrid id="DataGrid1" AutoGenerateColumns="false" runat="server">
    <Columns>
    <asp:TemplateColumn>
    <HeaderTemplate>
    <asp:LinkButton ID ="LinkButton1" Runat ="server" OnClick ="<%#SortByStartDay()%>">开始时间</asp:LinkButton>
    </HeaderTemplate>
    <ItemTemplate>
    <%#DataBinder.Eval(Container.DataItem,"StartDay")%>
    </ItemTemplate>
    </asp:TemplateColumn>

    <asp:TemplateColumn>
    <HeaderTemplate>
    <asp:LinkButton ID ="Linkbutton2" Runat ="server" OnClick ="<%#SortByEndDay()%>">开始时间</asp:LinkButton>
    </HeaderTemplate>
    <ItemTemplate>
    <%#DataBinder.Eval(Container.DataItem,"EndtDay")%>
    </ItemTemplate>
    </asp:TemplateColumn>
    </Columns>
    </asp:DataGrid>
      

  4.   

    后台两个排序函数和一个内部函数SortByString():
    private void SortByString(string str)
    {
    DataView Dv=DataTable1.DefaultView;//DataTable1 是要绑定到 DataGrid1的数据表
    Dv.Sort =str;
    this.DataGrid1 .DataSource =Dv;
    this.DataGrid1 .DataBind ();
    } public void SortByStartDay(string StartDay)
    {
    this.SortByString (StartDay);
    }
    public void SortByEndDay(string EndDay)
    {
    this.SortByString (EndDay);
    }