Example #1
0
        public void SaveChanges()
        {
            if (!_fileContentLoaded)
            {
                _logger.Debug("No need to save the data, nothing was loaded.");
                return;
            }

            if (_fileContentSaved)
            {
                _logger.Debug("No need to save the data, nothing changed since last save.");
                return;
            }

            CreateBackUp(
                WorkingDirectory,
                BackupDirectory,
                _fileName);

            SaveChanges(
                CsvLineMarketData.Header,
                _entities.Select(e => CsvLineMarketData.FormatForCSV(e, _separator, _cultureInfo)),
                Path.Combine(WorkingDirectory, _fileName),
                _separator);
        }
Example #2
0
        private void LoadWithParser(StreamReader reader)
        {
            using (var parser = new TextFieldParser(reader))
            {
                parser.SetDelimiters(_separator);

                while (!parser.EndOfData)
                {
                    if (CsvLineMarketData.TryParseFromCsv(
                            parser.ReadFields(),
                            _cultureInfo,
                            out IMarketDataEntity result))
                    {
                        _entities.Add(result);
                    }
                }
            }
        }