private void FixExtractionResultSqlServerFamily(SqlExtractionResult result) { // Don't bother about tables for diagramming foreach (var schema in result.Catalogs.SelectMany(c => c.Schemas)) { var tables = schema.Tables; var sysdiagrams = tables["sysdiagrams"]; if (sysdiagrams != null) { tables.Remove(sysdiagrams); } } }
private void FixExtractionResult(SqlExtractionResult result) { switch (ProviderInfo.ProviderName) { case WellKnown.Provider.SqlServer: case WellKnown.Provider.SqlServerCe: FixExtractionResultSqlServerFamily(result); break; case WellKnown.Provider.Sqlite: FixExtractionResultSqlite(result); break; } }
private void FixExtractionResultSqlite(SqlExtractionResult result) { var tablesToFix = result.Catalogs .SelectMany(c => c.Schemas) .SelectMany(s => s.Tables) .Where(t => t.Name.EndsWith("-Generator", StringComparison.Ordinal) && t.TableColumns.Count == 1 && t.TableColumns[0].SequenceDescriptor == null); foreach (var table in tablesToFix) { var column = table.TableColumns[0]; column.SequenceDescriptor = new SequenceDescriptor(column, 1, 1); } }
public SchemaExtractionResult(SqlExtractionResult sqlExtractionResult) { LockedTables = new Dictionary <string, string>(); Catalogs = sqlExtractionResult.Catalogs; }