Para el SqlDataSource:
if (Session["SortExpression"] == "id")
{
if (Session["order"] == "asc")
{
SqlDS.SelectCommand = Regex.Replace(SqlDS.SelectCommand, @"ORDER BY tb2\.[a-z]* [A-Z]{3,4}",
"ORDER BY tb2.id ASC"); //sustituimos la cadena order by por el campo que queremos ordenar de forma ascendente
(ver imagen1)
}
else
{
SqlDS.SelectCommand = Regex.Replace(SqlDS.SelectCommand, @"ORDER BY tb2\.[a-z]* [A-Z]{3,4}",
"ORDER BY tb2.id DESC"); //descendente
}
}
(Imagen 1) Exprecion regular que nos permite seleccionar “ORDER BY tb2.id ASC” de una cadena de texto
Como ordenar un DataTable:
if (Session["SortExpression"] == "id")
{
if (Session["order"] == "asc")
{
DataSource.DefaultView.Sort = "id ASC";//id es el nombre de la columna que queremos ordenar
}
else
{
DataSource.DefaultView.Sort = "id DESC";
}
}
No hay comentarios:
Publicar un comentario