datagrid sort event fires twice
protected int BindResultsToDatagrid(string sortExpression)
{
searchResultsDataSet =(DataSet)Session{"searchResultsDataSet"];
if (sortExpression.Length > 0)
{
searchResultsDataSet.Tables[0].DefaultView.Sort = sortExpression;
Session["searchResultsDataSet"] = searchResultsDataSet;
}
searchResults.DataSource = null;
searchResults.DataBind();
searchResults.DataSource = searchResultsDataSet.Tables[0].DefaultView;
searchResults.DataBind();
return searchResultsDataSet.Tables[0].DefaultView.Count;
}
protected void searchResults_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
string sortExpression = (string)Session["sortExp"];
string sortDirection = (string)Session["sortDir"];
if (sortExpression != e.SortExpression)
{
sortExpression = e.SortExpression;
sortDirection = "asc";
}
else
{
if (sortDirection == "asc")
sortDirection = "desc";
else
sortDirection = "asc";
}
Session["sortExp"] = sortExpression;
Session["sortDir"] = sortDirection;
BindSearchResultsToGrid(sortExpression + " " + sortDirection);
}
I actually copied this code from the net, and I'm surprised it's out there and doesn't work. Can anyone help?

