public void Test() { TransactionReader reader = new TransactionReader(); TransactionCsv transaction = reader.ReadTransaction("13-12-2018,19:44,PT TELEKOMUNIKASI INDO,US7156841063,NSY,9,USD,26.6900,USD,-240.2100000,EUR,-211.3127370,1.1368,EUR,-0.53,EUR,-211.8427370"); Assert.IsNotNull(transaction); }
public object GetData(String transactionsFile, String portfolioFile) { String transactions = transactionsFile; List <TransactionCsv> list = new List <TransactionCsv>(); List <PortfolioRecord> portfolioList = new List <PortfolioRecord>(); Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("de-DE"); Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("de-DE"); using (StreamReader reader = new StreamReader(transactions)) { ////CsvReader csv = Create(reader); TransactionReader transactionReader = new TransactionReader(); string line; reader.ReadLine(); // skip header while (null != (line = reader.ReadLine())) { TransactionCsv tr = transactionReader.ReadTransaction(line); list.Add(tr); } ////list = csv.GetRecords<TransactionCsv>().ToList(); } if (!String.IsNullOrEmpty(portfolioFile) && File.Exists(portfolioFile)) { ////reader1 = new FixingReader(portfolioFile); using (StreamReader reader = new StreamReader(portfolioFile)) { PortfolioReader porfolioReader = new PortfolioReader(); string line; reader.ReadLine(); // skip header while (null != (line = reader.ReadLine())) { PortfolioRecord record = porfolioReader.Read(line); portfolioList.Add(record); } } List <TransactionCsv> finalList = new List <TransactionCsv>(); foreach (var trans in list) { PortfolioRecord match = portfolioList.FirstOrDefault(x => x.ISIN == trans.ISIN); if (match != null) { trans.CurrentValue = match.Wert / match.Anzahl; finalList.Add(trans); } } finalList.Sort((x, y) => y.Perf.CompareTo(x.Perf)); return(finalList); } else { return(list); } }
public void Test() { TransactionReader reader = new TransactionReader(); TransactionCsv transaction = reader.ReadTransaction("13-12-2018,19:44,PT TELEKOMUNIKASI INDO,US7156841063,NSY,9,USD,26.6900,USD,-240.2100000,EUR,-211.3127370,1.1368,EUR,-0.53,EUR,-211.8427370"); Assert.NotNull(transaction); Assert.Equal(9, transaction.Anzahl); Assert.Equal("USD", transaction.Currency); Assert.Equal(26.69m, transaction.Price); }