我现在想在gridview里进行排序, if (!IsPostBack)
{
this.btnExport.Visible = false;
ViewState["SortOrder"] ="Sno";
ViewState["OrderDire"] ="ASC";
ddlYearBind();
gdvYearBind(); }
public void gdvYearBind()
{
SqlConnection con = db.GetConnection();
con.Open();
SqlDataAdapter sda = new SqlDataAdapter("proState",con);
sda.SelectCommand.CommandType = CommandType.StoredProcedure;
SqlParameter prams = new SqlParameter("@Term",SqlDbType.VarChar,20);
prams.Value = this.ddlYear.SelectedValue;
sda.SelectCommand.Parameters.Add(prams);
DataSet ds = new DataSet();
sda.Fill(ds,"table");
DataView dv=ds.Tables["table"].DefaultView;
string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
dv.Sort=sort;
gdvYear.DataSource=dv;
gdvYear.DataBind();
}
protected void gdvYear_Sorting(object sender, GridViewSortEventArgs e)
{
string sPage = e.SortExpression; //设置进行排序的表达式
if (ViewState["SortOrder"].ToString() == sPage)
{ if (ViewState["OrderDire"].ToString() == "Desc")
ViewState["OrderDire"] = "ASC";
else
ViewState["OrderDire"] = "Desc";
}
else
{
ViewState["SortOrder"] = e.SortExpression;
} gdvYearBind();
}
这是我的代码,在运行的时候提示找不到列Sno,这是怎么回事啊?
{
this.btnExport.Visible = false;
ViewState["SortOrder"] ="Sno";
ViewState["OrderDire"] ="ASC";
ddlYearBind();
gdvYearBind(); }
public void gdvYearBind()
{
SqlConnection con = db.GetConnection();
con.Open();
SqlDataAdapter sda = new SqlDataAdapter("proState",con);
sda.SelectCommand.CommandType = CommandType.StoredProcedure;
SqlParameter prams = new SqlParameter("@Term",SqlDbType.VarChar,20);
prams.Value = this.ddlYear.SelectedValue;
sda.SelectCommand.Parameters.Add(prams);
DataSet ds = new DataSet();
sda.Fill(ds,"table");
DataView dv=ds.Tables["table"].DefaultView;
string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
dv.Sort=sort;
gdvYear.DataSource=dv;
gdvYear.DataBind();
}
protected void gdvYear_Sorting(object sender, GridViewSortEventArgs e)
{
string sPage = e.SortExpression; //设置进行排序的表达式
if (ViewState["SortOrder"].ToString() == sPage)
{ if (ViewState["OrderDire"].ToString() == "Desc")
ViewState["OrderDire"] = "ASC";
else
ViewState["OrderDire"] = "Desc";
}
else
{
ViewState["SortOrder"] = e.SortExpression;
} gdvYearBind();
}
这是我的代码,在运行的时候提示找不到列Sno,这是怎么回事啊?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货