Beispiel #1
0
        /// <summary>
        /// モデルの読み込み
        /// </summary>
        private void InputFileNameButton_Click(object sender, RoutedEventArgs e)
        {
            UpdatePhase(ExecutePhase.DataReading);

            OpenFileDialog ofd = new OpenFileDialog
            {
                InitialDirectory = "Resources",
                FileName         = "",
                DefaultExt       = "*.*",
                Filter           = "CSVファイル|*.csv",
            };

            var ret = ofd.ShowDialog();

            if (ret.HasValue && ret.Value)
            {
                var filePath = ofd.FileName;
                InputFileNameLabel.Content = ofd.SafeFileName;

                var datas = CsvUtility.ReadCsv(filePath, true);

                _cityList.Clear();
                _cityList = ModelUtility.GetAllCitiesModel(datas).ToList();
            }

            DrawCities();

            UpdatePhase(ExecutePhase.Setting);
        }
Beispiel #2
0
        /// <summary>
        /// Do main logic e.g. command line swiches were ok
        /// </summary>
        /// <param name="opts">Options</param>
        private static void RunOptionsAndReturnExitCode(Models.CmdOptions opts, ILogger logger)
        {
            if (opts is null)
            {
                throw new ArgumentNullException(nameof(opts));
            }

            if (string.IsNullOrWhiteSpace(opts.ExportFileName) && string.IsNullOrWhiteSpace(opts.ImportFilename))
            {
                throw new ArgumentException("Either -i or -o must be specified");
            }

            var csv = new CsvUtility(new CsvOptions(), logger);

            if (!string.IsNullOrWhiteSpace(opts.ExportFileName))
            {
                dt = CreateData(opts);
                csv.WriteCsv(opts.ExportFileName, HandleCsvLineWrite);
            }

            if (!string.IsNullOrWhiteSpace(opts.ImportFilename))
            {
                csv.ReadCsv(opts.ImportFilename, HandleCsvLineRead);
            }

            logger.LogInformation("Exiting...");
        }