using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; namespace MaDll { public interface ICalculette { int Addition(int val, int autreVal); } public class SuperCalculette : ICalculette { } public class Cotation { public DateTime Date { get; set; } public long Volume { get; set; } public double High { get; set; } public double Low { get; set; } public double Close { get; set; } } public class CotationManager { public IList Read(string filename) { var lines = File.ReadAllLines(filename); var result = new List(); for (var i = 1; i < lines.Length; i++) { var datas = lines[i].Split(','); var item = new Cotation(); item.Date = DateTime.Parse(datas[0]); item.High = double.Parse(datas[2], NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture); item.Low = double.Parse(datas[3], NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture); item.Close = double.Parse(datas[5], NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture); item.Volume = long.Parse(datas[6]); result.Add(item); } return result; } public Cotation PlusBas(IList stocks) { return stocks.Aggregate((s, x) => s.Low < x.Low ? s : x); } public Cotation PlusHaut(IList stocks) { return stocks.Aggregate((s, x) => s.High > x.High ? s : x); } } }