public async Task <ValidationResult> ValidData(IEnumerable <string> data) { var result = new ValidationResult(); foreach (var record in data.RemoveDuplicates().Select((value, i) => new { i, value })) { if (record.value.IsValid(out var date, out var marketPrice)) { var validRecord = new InsertDataModel { Date = date, MarketPriceEX1 = marketPrice }; OnValidRecord?.Invoke(this, new ValidRecordEventArgs { InsertData = validRecord, Row = record.i }); result.ValidRecord.Add(validRecord); } else { result.MalformedRecordLine.Add(record.i); OnMalformedRecord?.Invoke(this, record.i); } } return(await Task.FromResult(result)); }
public async Task Insert(InsertDataModel model) { await _context.MarketDatas.AddAsync(new MarketData { Date = model.Date, MarketPriceEX1 = model.MarketPriceEX1 }); await _context.SaveChangesAsync(); }
public async Task InsertRecord(InsertDataModel model) { if (!_repository.Exists(y => model.Date == y.Date && model.MarketPriceEX1 == y.MarketPriceEX1)) { await _repository.Insert(model); OnInsertRecord?.Invoke(this, new List <InsertDataModel> { model }); } }