Exemple #1
0
        public void DImprimante()
        // Fonction pour supprimer une imprimante
        // A1 D
        {
            AfficherToutesImprimantes();
            int    imprimanteId = RImprimante(); // Recherche de l'imprimante à mettre à jour. Retourne 0 si elle n'existe pas
            string choixMenu;

            if (imprimanteId != 0)
            {
                DImprimanteAfficherEffet(imprimanteId);
                do
                {
                    Console.WriteLine("Êtes-vous certain de vouloir supprimer cette imprimante? (1-oui / 0-non)");
                    choixMenu = Console.ReadLine();
                } while (choixMenu != "0" && choixMenu != "1");
                if (choixMenu == "1")
                {
                    Buse b;
                    var  idDeBuses = this.context.ConfigPhysiques
                                     .Where(c => c.ImprimanteId == imprimanteId)
                                     .ToList();

                    foreach (ConfigPhysique bb in idDeBuses)
                    {
                        b = this.context.Buses.Find(idDeBuses);
                        foreach (ConfigPhysique cp in b.ConfigPhysiques.ToList())
                        {
                            b.ConfigPhysiques.Remove(cp);       // dissocie les config de la buse
                        }
                    }
                    context.SaveChanges();

                    var imprimante = this.context.Imprimantes.Where(c => c.ID == imprimanteId).First(); // L'imprimante que l'on veut supprimer
                    this.context.Imprimantes.Remove(imprimante);
                    this.context.SaveChanges();
                    Console.WriteLine("L'imprimante a été supprimer.");
                }
            }
            Console.WriteLine("Appuyez sur la touche entrée");
            Console.ReadLine();
        }