This is the logic i have written on my custom activity for remove particular columns
string[] tmpcolumnNames = datatable.Columns.Cast<DataColumn>()
.Select(x => x.ColumnName)
.ToArray();
List<string> lst = tmpcolumnNames.ToList();
foreach (string temp in columnNames)
{
lst.Remove(temp);
}
string[] tmp = lst.ToArray();
datatable = datatable.DefaultView.ToTable(false, tmp);
it was written in c# and columnNames is the array of column names