public List <Fichier> Recuperer(string csv) { List <Fichier> liste = new List <Fichier>(); Pert pert = new Pert(); List <Pert> liste_tache = Liste_Tache(csv); List <Pert> details = Details(liste_tache); List <Pert> date = pert.Calcul_Date(details); List <Pert> plus_tard = pert.Calcul_Date_Au_Plus_Tard(details, date); List <Pert> total = pert.Calcul_Marge_total(details, plus_tard, date); List <Pert> libre = pert.Calcul_Marge_Libre(details, date, total, plus_tard); foreach (var lt in liste_tache) { var dt = date.First(x => x.Taches == lt.Taches).Durees; var pt = plus_tard.First(x => x.Taches == lt.Taches).Durees; var t = total.First(x => x.Taches == lt.Taches).Durees; var l = libre.First(x => x.Taches == lt.Taches).Durees; liste.Add(new Fichier { Taches = lt.Taches, Descriptions = lt.Nom_Taches, Durees = lt.Durees, Antecedents = lt.Antecedents, Dates = dt, Date_Plus_Tard = pt, Marge_Total = t, Marge_Libre = l }); } return(liste); }