it-swarm-tr.com

C # içindeki DataTable'dan sütunları kaldır

Bir fonksiyon çağrısından geri alındığı için bir DataTable alıyorum bir DataSet'im var. 15-20 sütunu vardır, ancak yalnızca 10 sütunu istiyorum.

İstemediğim sütunları kaldırmanın bir yolu var mı, DataTable'ı yalnızca istediğim tanımlanmış sütunları içeren bir başkasına kopyalayın, yoksa koleksiyonu yinelemek ve yalnızca ihtiyacım olan sütunları kullanmak daha mı iyidir?.

Değerleri sabit uzunluktaki bir veri dosyasına yazmam gerekiyor.

99
Brian G

Bant genişliğini ve belleği azaltmak için seçilen sütunların sınırlandırılmasının yanı sıra:

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

İstediğiniz sütundan sonra tüm sütunları kaldırmak için bu küçük işlev çalışmalıdır. Sütun sayısı 10 veya daha az olana kadar, dizin 10'da kaldırılır (Sütunların 0 tabanlı olduğunu unutmayın).

        DataTable dt;
        int desiredSize = 10;

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