it-swarm.it

Rimuovere le colonne da DataTable in C #

Ho un DataSet da cui ottengo una DataTable da cui vengo restituito da una chiamata di funzione. Ha 15-20 colonne, tuttavia voglio solo 10 colonne di dati.

C'è un modo per rimuovere quelle colonne che non voglio, copiare la DataTable su un'altra che ha solo le colonne definite che voglio o è meglio iterare la raccolta e usare solo le colonne di cui ho bisogno.

Devo scrivere i valori in un file di dati a lunghezza fissa.

99
Brian G

Oltre a limitare le colonne selezionate per ridurre la larghezza di banda e la memoria:

DataTable t;
t.Columns.Remove("columnName");
t.Columns.RemoveAt(columnIndex);
270
Tom Ritter

Per rimuovere tutte le colonne dopo quella desiderata, questa piccola funzione dovrebbe funzionare. Rimuoverà all'indice 10 (ricorda che le colonne sono basate su 0), fino a quando il conteggio delle colonne è 10 o meno.

        DataTable dt;
        int desiredSize = 10;

        while (dt.Columns.Count > desiredSize)
        {
            dt.Columns.RemoveAt(desiredSize);
        }
21
Timothy Carter