diff options
Diffstat (limited to 'Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs')
| -rw-r--r-- | Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs b/Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs index 9c39eeac6..43a368358 100644 --- a/Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs +++ b/Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs @@ -12,17 +12,24 @@ using Tango.Synchronization.Conversion; namespace Tango.SQLiteGenerator.CLI { + public enum Config + { + Default, + CopyAll, + } + class Program { static void Main(string[] args) { String sqlitePath = args[0]; + Config conf = args.Length > 1 ? (Config)Enum.Parse(typeof(Config), args[1]) : Config.Default; sqlitePath = Path.GetFullPath(sqlitePath); bool completed = false; - String connectionString = SettingsManager.Default.GetOrCreate<CoreSettings>().SQLServerAddress; + String connectionString = SettingsManager.Default.GetOrCreate<CoreSettings>().DataBaseSource; Console.WriteLine("Connecting to " + connectionString + "..."); @@ -60,14 +67,23 @@ namespace Tango.SQLiteGenerator.CLI { List<TableSchema> updated = schema.Where(x => x.TableName.ToLower() != "sysdiagrams").ToList(); - updated - .Where(table => sync_configurations.Where(config => (SyncConfiguration)config.SYNC_TYPE == SyncConfiguration.OverwriteLocal).ToList() - .Exists(config => config.TABLE_NAME == table.TableName)).ToList().ForEach(x => x.CopyData = true); + if (conf == Config.Default) + { + updated + .Where(table => sync_configurations.Where(config => (SyncConfiguration)config.SYNC_TYPE == SyncConfiguration.OverwriteLocal).ToList() + .Exists(config => config.TABLE_NAME == table.TableName)).ToList().ForEach(x => x.CopyData = true); + } + else if (conf == Config.CopyAll) + { + updated.ForEach(x => x.CopyData = true); + } return updated; }); SqlServerToSQLiteConverter converter = new SqlServerToSQLiteConverter(); + converter.GenerateForeignKeys = true; + converter.GenerateIndexes = true; converter.ConvertSqlServerToSQLiteDatabase(connectionString, sqlitePath, null, handler, selectionHandler, null, false, false); |
