private void ImportCommand(string command) { var folder = GetCommandParam(command, "-import"); if (Directory.Exists(folder)) { try { var config = FileImportHelper.GetConfig(folder); _console.WriteLine("\n Reading config.json ok"); var inventories = FileImportHelper.GetInventory(folder); _console.WriteLine("\n Reading inventory.json ok"); var exchangeRates = FileImportHelper.GetRates(folder); _console.WriteLine("\n Reading exchange_rates.json ok"); _configService.ImportData(inventories, config, exchangeRates); _console.WriteLine("\n Saving new config to db completed"); } catch (Exception ex) { _console.WriteLine("\n Error during file importing: " + ex.Message); } } else { _console.WriteLine("\n Error. Folder don't exists. Please provide folder path with config files"); } }
public async Task Run(string defaultFilesFolderPath) { try { _logger.LogInformation("Starting db. Checking connection to SQL server"); await _context.Database.MigrateAsync().ConfigureAwait(false); if (!await _context.Inventory.AnyAsync()) { _logger.LogInformation("Empty database. Importing default config"); var config = FileImportHelper.GetConfig(defaultFilesFolderPath); var inventories = FileImportHelper.GetInventory(defaultFilesFolderPath); var exchangeRates = FileImportHelper.GetRates(defaultFilesFolderPath); _configService.ImportData(inventories, config, exchangeRates); _logger.LogInformation("Default setup completed"); } _configService.UpdateCoins(0, true); _logger.LogInformation("Db started succesfully"); } catch (Exception ex) { _logger.LogCritical("Init db failed", ex); System.Console.WriteLine("\nInit db failed. Please check log for more details."); throw; } }
private static List <ExchangeRateModel> GetTestRates() { var codeBaseUrl = new Uri(Assembly.GetExecutingAssembly().CodeBase); var codeBasePath = Uri.UnescapeDataString(codeBaseUrl.AbsolutePath); var dirPath = Path.GetDirectoryName(codeBasePath); var defaultRates = FileImportHelper.GetRates(Path.Combine(dirPath, "TestResources")); return(defaultRates); }