Bagaimana cara mendapatkan daftar kolom dari file CSV menggunakan OleDb?

Saya dapat dengan mudah mendapatkan daftar kolom dari file excel seperti ini:

columns = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new string[] { null, null, tableName, null });

Saya ingin melakukan hal yang sama untuk file CSV tetapi saya tidak yakin parameter apa yang diperlukan. String koneksi saya ke file CSV adalah:

"Provider=Microsoft.ACE.OLEDB.12.0; Data Source={0}; Extended Properties='text; FMT=Delimited(,); ReadOnly={1}; HDR={2}'".FormatString(directory, readOnly, (firstLineIsColumnHeaders ? "yes" : "no"))

Yang ternyata (dalam hal ini) menjadi seperti:

Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\Windows\Temp\sadf83.tmp; Extended Properties='text; FMT=Delimited(,); ReadOnly=true; HDR=yes'

Tetapi ketika saya mencoba GetOleDbSchemaTable, perintahnya kembali oke tetapi memberi saya DataTable; hal yang sama juga terjadi ketika saya mencoba GetSchema("Columns").


person Josh M.    schedule 05.04.2013    source sumber
comment
kemungkinan duplikat Dapatkan semua tabel dan semua kolom dari odbc basis data   -  person MethodMan    schedule 06.04.2013
comment
@ I4V Tidak sulit sama sekali, tapi saya lebih suka menggunakan metode bawaan daripada menulis ulang logika yang sama!   -  person Josh M.    schedule 06.04.2013
comment
@DJKRAZE Terima kasih, tetapi saya sudah mencoba kedua metode di posting itu dan saya masih mendapatkan DataTable kosong. Sebenarnya memilih data dari file CSV berfungsi dengan baik, hanya metode OleDb untuk mendapatkan skema/kolom tidak berfungsi.   -  person Josh M.    schedule 06.04.2013