/// <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); }
/// <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..."); }