Archivi tag: datatable sort

[C#] – Ordinare un DataTable…

Problema: ordinare un DataTable secondo un certo campo…
Soluzione: La soluzione sfrutta semplicemente la possibilitÓ di ricorrere alla proprietÓ sort della DataView. la funzione che chiameremo Sort, accetta tre parametri:
– dtTable: il datatable
– field: il campo su cui fare l’ordinamento
– sortOrder: ASC o DESC

Problem: How to order a DataTable
Solution: this solution simply use Sort property of DataView. Function name is Sort and has three params:
– dtTable: the datatable
– field: the key field on which we want sort the DataTable
– sortOrder: ASC or DESC
ecco il codice:
this is the code:

private DataTable Sort(DataTable dtTable, string field, string sortOrder)
{
string sortFormat = "{0} {1}";
dtTable.DefaultView.Sort = string.Format(sortFormat, field, sortOrder);
return dtTable.DefaultView.Table;
}

e se invece volessimo ordinare una tabella secondo campi diversi con diversi ordinamenti?
Tutto molto semplice, basta ricorrere sempre alla solita sort fornita dalla vista:

dtTable.DefaultView.Sort = "campo1 DESC, campo2 ASC ecc ecc";

facile vero?

Il mio consiglio, qual’ora non funzioni l’ordinamento Ŕ quello di controllare bene il formato delle colonne, ovvero se intendete ordinare per data e notate che l’ordinamento non funziona, probabilmente il motivo Ŕ che la colonna esibisce dati in formato testo e non data.