private void Export(DataTable dataTable)
 {
     if (csvRadioButton.Checked)
     {
         ExportToCsv.Export(dataTable, _fileName, _dataViewerParameters);
     }
     else if (sqlRadioButton.Checked)
     {
         ExportToSql.Export(dataTable, _fileName, _dataViewerParameters);
     }
     else
     {
         ExportToPtt.Export(dataTable, databaseNameTextBox.Text.Trim(), _fileName);
     }
 }
Esempio n. 2
0
        public Task SaveAsync(CancellationToken cancellationToken)
        {
            var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

            config.AppSettings.Settings.Clear();

            config.AppSettings.Settings.Add(IlrDatabaseConnectionStringKey, IlrDatabaseConnectionString);
            config.AppSettings.Settings.Add(OutputDirectoryKey, OutputDirectory);
            config.AppSettings.Settings.Add(ExportToSqlKey, ExportToSql.ToString());
            config.AppSettings.Settings.Add(ExportToAccessAndCsvKey, ExportToAccessAndCsv.ToString());
            config.AppSettings.Settings.Add(ReferenceDataVersionKey, ReferenceDataVersion);

            config.Save(ConfigurationSaveMode.Modified);

            return(Task.CompletedTask);
        }
Esempio n. 3
0
        static async Task Main(string[] args)
        {
            using var cancellationToken = new CancellationTokenSource();

            Console.CancelKeyPress += (sender, eventArgs) =>
            {
                // ReSharper disable AccessToDisposedClosure
                if (!cancellationToken.IsCancellationRequested)
                {
                    cancellationToken.Cancel();
                }
                // ReSharper restore AccessToDisposedClosure
            };

            var cmd    = args.Length == 0 ? "markdown" : args[0].Trim().ToLowerInvariant();
            var search = args.Length < 2 ? "18452" : args[1].Trim();

            var commandletArgs = args.Skip(1).ToArray();

            switch (cmd)
            {
            case "blizzard":
                var commandlet = new BlizzardApiCommandlet(commandletArgs, cancellationToken.Token);
                await commandlet.Execute();

                break;

            case "caches":
                await ScanCache.Execute();

                break;

            case "search":
                await SearchDatabase.Execute(search);

                break;

            case "sql":
                ExportToSql.Execute();
                break;

            case "mdt":
                //using (var file = File.OpenRead(@"D:\Work\RoboKiwi.gg\src\RoboKiwi.Core\Models\MethodDungeonTools.json"))
                var json = await File.ReadAllTextAsync(@"D:\Work\RoboKiwi.gg\src\RoboKiwi.Core\Models\MethodDungeonTools.json");

                {
                    //dynamic model = await JsonSerializer.DeserializeAsync<dynamic>(file, options, CancellationToken.None);

                    dynamic model = JsonConvert.DeserializeObject(json);

                    foreach (var dungeon in model.global.dungeonEnemies)
                    {
                        if (dungeon == null)
                        {
                            continue;
                        }

                        foreach (var enemy in dungeon)
                        {
                            if (enemy == null)
                            {
                                continue;
                            }

                            Console.WriteLine(enemy.name);
                        }
                    }
                }
                break;

            case "journal":
                await ExtractJournal();

                break;

            case "markdown":
                var markdown = new MarkdownCommandlet(commandletArgs, cancellationToken.Token);
                await markdown.Execute();

                break;

            case "json":
                await GenerateJson();

                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(args));
            }
        }