public static IEnumerable<TableData> FromTableSets(IEnumerable<IEnumerable<TableData>> datasets) { var tables = new Dictionary<string, MergedTableData>(); foreach (var partition in datasets) { foreach (var table in partition) { MergedTableData current; if (!tables.TryGetValue(table.Name, out current)) { tables.Add(table.Name, current = new MergedTableData(table.Schema)); } current.Sources.Add(table); } } return tables.Values; }
public static IEnumerable <TableData> FromTableSets(IEnumerable <IEnumerable <TableData> > datasets) { var tables = new Dictionary <string, MergedTableData>(); foreach (var partition in datasets) { foreach (var table in partition) { MergedTableData current; if (!tables.TryGetValue(table.Name, out current)) { tables.Add(table.Name, current = new MergedTableData(table.Schema)); } current.Sources.Add(table); } } return(tables.Values); }