private static ColumnValueSet ColumnValues(UnpredictableColumnSource table, List <SnapshotTableDifferences> tableDiffs, UnpredictableColumnSource.UnpredictableColumn column) { var tableForValues = tableDiffs.SingleOrDefault(d => d.TableDefinition.TableName == table.Table.TableName); List <object> values = null; if (tableForValues != null) { values = ColumnValues(column.Column.Name, tableForValues).ToList(); } var references = ColumnReferences(column, tableDiffs).Distinct().ToList(); return(new ColumnValueSet(table.Table, column.Column, values ?? new List <object>(), references ?? new List <object>())); }
public static List <ColumnValueSet> Scan(UnpredictableColumnSource table, List <SnapshotTableDifferences> tableDiffs) { return(table.Columns.Select(c => ColumnValues(table, tableDiffs, c)).Distinct().ToList()); }