string sql;
 sql = "select * from nclass order by nclass";
 OleDbDataAdapter das = new OleDbDataAdapter();
 das.SelectCommand = new OleDbCommand(sql, conn);
 DataSet ds = new DataSet();
 das.Fill(ds, "moba");
 this.GridView1.DataKeyNames = new string[] { "nclassid" };
 this.GridView1.DataSource = ds.Tables["moba"];
 this.GridView1.DataBind();
怎么在Gridview中直接用sql语句中的排序呢?

解决方案 »

  1.   

    sql="select * from nclass order by nclassid desc(根据nclassid降序排列,升序asc)
      

  2.   

    我是想实现nclass表中的nclass字段进行排序,,直接写在sql中好像不行。
      

  3.   

    本来就是按照sql语句排序的。
    另外,你不用这么麻烦吧,直接弄个sqldatasource不就行了。
      

  4.   

    sing System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Data.SqlClient;
    using AjaxPro;public partial class Test_Test001 : System.Web.UI.Page
    {
        SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["connectionString"]);
        public string sql;
        protected void Page_Load(object sender, EventArgs e)
        {
            //AjaxPro.Utility.RegisterTypeForAjax((typeof(Test_Test001)));
            if (!Page.IsPostBack)
            {
                BindData("jobno");
            }
        }
        protected void GridView1_PreRender(object sender, EventArgs e)
        {
           
        }
        private void BindData(string sort)
        {
            
            sql = "select top 100 jobno,jobfixno,jobproperty,jobtype,inputdate from jobse";
            SqlDataAdapter myda = new SqlDataAdapter(sql, conn);
            conn.Open();
            DataSet ds = new DataSet();
            myda.Fill(ds, "RusTable");
            DataView dv = ds.Tables["RusTable"].DefaultView;
            if (sort == "")
            {
                dv.Sort = " jobno Desc";
            }
            else
            {
                dv.Sort = sort + " Desc";
            }
            GridView1.DataSource = dv;
            GridView1.DataBind();
            conn.Close();
        }    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            this.GridView1.PageIndex = e.NewPageIndex;
            BindData(ViewState["SortEx"].ToString());
        }
        protected void GridView1_Sorted(object sender, EventArgs e)
        {
            
        }
        protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
        {
            ViewState["SortEx"] = e.SortExpression;
            BindData(e.SortExpression);    }
    }