using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Globalization; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Model { public class Especetheque { public ReadOnlyCollection ListeEspeces { get; private set; } private readonly List listeEspeces = new List(); public Especetheque() { ListeEspeces = new ReadOnlyCollection(listeEspeces); LoadEspecetheque(); } private void LoadEspecetheque() { HashSet Races = new HashSet(); Races.Add(new("Abyssin")); Races.Add(new("American curl")); listeEspeces.Add(new("Chien", "Canis lupus familiaris", "chien.png")); listeEspeces.Add(new("Chat", "Felis catus", "chat.png", "15 à 20 ans", "15 à 20 kg", "10 à 15 cm", Races)); listeEspeces.Add(new("Hamster", "Cricetinae")); listeEspeces.Add(new("Lapin", "Oryctolagus cuniculus")); } public void AfficherListeEspece() { Console.WriteLine("LISTE DES ESPECES : "); foreach (Espece espece in ListeEspeces) { Console.WriteLine("\t" + espece.Nom + " (" + espece.NomScientifique + ")"); } Console.WriteLine("\n"); } public Espece? RechercherEspece(string choix) { foreach (Espece espece in ListeEspeces) { if (espece.Nom == choix) { return espece; } } return null; } public void SelectionnerEspece() { string choix = ""; while (choix != "-1") { AfficherListeEspece(); Console.Write("\n\tEntrer le nom de l'espèce à sélectionner (-1 pour annuler) : "); choix = Console.ReadLine(); Espece espece = RechercherEspece(choix); if (espece != null) { espece.AfficherEspece(); } else Console.WriteLine("\tChoix incorrect\n"); } } } }