DataTable table = new DataTable();
//add in tables
table.Columns.Add("Column 1", typeof(int));
table.Columns.Add("Column 2", typeof(int));
//add in rows
table.Rows.Add(1, 2);
Это будет означать итерацию по dbf и захват имен столбцов, затем вставлять их с 2 для каждого цикла (столбца), а затем добавлять нужные столбцы.Также могут быть удалены любые столбцы ссылок, которые идентичны в каждом столбце.
Затем еще 2 для каждого (строки) циклов, и вы можете заполнить строки данных.
Все, что осталось, это для каждогострока в таблице, чтобы вычислить значения пользовательских столбцов для этой строки.
В зависимости от отношений dbf, вы можете просто настроить петли.