aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs
diff options
context:
space:
mode:
authorAvi Levkovich <avi@twine-s.com>2018-06-03 10:34:59 +0300
committerAvi Levkovich <avi@twine-s.com>2018-06-03 10:34:59 +0300
commit34b3f33ec9ccb682c430b3c9e206507d0a396e1c (patch)
tree4d67c5f052c5583283f5c7ce02ad77fab8a875c6 /Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs
parent565d4cfcfc382e1ab63fd8fc6bbb3bb4562d16d9 (diff)
parent7399e15a1456064fc2e25daf841e0d3027d83489 (diff)
downloadTango-34b3f33ec9ccb682c430b3c9e206507d0a396e1c.tar.gz
Tango-34b3f33ec9ccb682c430b3c9e206507d0a396e1c.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/_git/Tango
Diffstat (limited to 'Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs')
-rw-r--r--Software/Visual_Studio/Utilities/Tango.SQLiteGenerator.CLI/Program.cs24
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);