public static IEnumerable <IEnumerable <(TableColumn column, object value)> > EnumerateRowsAndConvertValuesToNETDataType(this ITableData data, params string[] columnNames) { foreach (var row in data.EnumerateRows(columnNames)) { yield return(row.Select(column => { if (column.value != null) { column.value = Convert.ChangeType(column.value, column.column.NETDataType); } return column; })); } }