public void LancementApplication() { //this.CreationProjet(); // on récupère ce qui est écrit dans le fichier string xmlInput = File.ReadAllText("test.xml"); // on "déserialize" le contenu du fichier _listeProjets = XML_test.ConvertFromXml <List <Projet> >(xmlInput); // lancement int choix = 0; bool continuer = true; while (continuer == true) { Console.WriteLine("Bienvenue dans votre outil de gestion de projet !\nQue voulez vous faire ?"); Console.WriteLine("1 : Rechercher un projet\n2 : Ajouter un projet\n3 : Supprimer un projet"); bool continuerDemander = true; while (continuerDemander) { try { choix = int.Parse(Console.ReadLine()); if (choix == 1 || choix == 2 || choix == 3) { continuerDemander = false; } else { Console.WriteLine("Veuillez entrer 1 pour chercher un projet, 2 pour ajouter un projet ou 3 pour supprimer un projet."); } } catch (Exception e) { Console.WriteLine("Veuillez entrer 1 pour chercher un projet, 2 pour ajouter un projet ou 3 pour supprimer un projet."); } } if (choix == 1) { //Appel à la sous classe RechercheProjet R = new RechercheProjet(_nbProjets, _listeProjets); R.Recherche(); } else if (choix == 2) { AjoutProjet A = new AjoutProjet(_nbProjets, _listeProjets); A.AjouterProjet(); } else//Forcément 3 car on a déjà vérifié au préalable que le chiffre était soit 1 soit 2 soit 3 { Console.WriteLine("Veuillez entrer le nom du projet à supprimer."); string _projetSupp = Console.ReadLine().ToLower(); bool _projetTrouve = false; foreach (Projet P in _listeProjets) //On parcourt tous les projets { if (_projetSupp == P._nom.ToLower()) { _listeProjets.Remove(P); _projetTrouve = true; string xmlOutput = XML_test.ConvertToXml(_listeProjets); File.WriteAllText("test.xml", xmlOutput); break; } } if (_projetTrouve) { Console.WriteLine("Le projet nommé {0} a bien été supprimé.", _projetSupp); } else { Console.WriteLine("Le projet nommé {0} est introuvable.", _projetSupp); } } Console.WriteLine("Tapez 1 pour effectuer une nouvelle recherche, un autre chiffre pour quitter l'application."); int reponse = int.Parse(Console.ReadLine()); if (reponse == 1) { continuer = true; } else { continuer = false; } } Console.WriteLine("Merci, à bientôt ! "); }
//Fonction qui va gérer l'ajout de projet dans l'application public void AjouterProjet() { Console.WriteLine("--- Bienvenue dans votre outil d'ajout de projet ---"); /*=======================================================================================*/ Console.WriteLine("Veuillez entrer le nombre d'intervenants du projet"); int nbIntervenants = 0; bool continuerDemandeNb = true; while (continuerDemandeNb) { try { nbIntervenants = int.Parse(Console.ReadLine()); continuerDemandeNb = false; } catch (Exception e) { Console.WriteLine("Veuillez entrer un nombre."); } } /*=======================================================================================*/ Console.WriteLine("Veuillez entrer le nombre de jours du projet"); int nbJours = 0; bool continuerDemandeNbJours = true; while (continuerDemandeNbJours) { try { nbJours = int.Parse(Console.ReadLine()); continuerDemandeNbJours = false; } catch (Exception e) { Console.WriteLine("Veuillez entrer un nombre."); } } /*=======================================================================================*/ Console.WriteLine("Veuillez entrer l'année du projet"); int annee = 2020; bool continuerDemandeAnnee = true; while (continuerDemandeAnnee) { try { annee = int.Parse(Console.ReadLine()); continuerDemandeAnnee = false; } catch (Exception e) { Console.WriteLine("Veuillez entrer un nombre."); } } /*=======================================================================================*/ Console.WriteLine("Veuillez entrer le nom du projet"); string nomProjet = Console.ReadLine(); /*=======================================================================================*/ Console.WriteLine("Veuillez entrer le type du projet"); //On affiche tous les types de projets en les faisant correspondre à un numéro int i = 1; foreach (string t in _typeProjets) { Console.WriteLine(i + " : " + t); i++; } //On veut vérifier que la réponse entrée par la personne est bien un nombre, et se situe entre 1 et 4. int typeChoisi = 0; bool continuerDemandeType = true; while (continuerDemandeType) { try { typeChoisi = int.Parse(Console.ReadLine()); if (typeChoisi >= 1 && typeChoisi <= 4) { continuerDemandeType = false; } else { Console.WriteLine("Veuillez entrer un nombre entre 1 et 4."); } } catch (Exception e) { Console.WriteLine("Veuillez entrer un nombre entre 1 et 4."); } } string typeProjet = _typeProjets[typeChoisi - 1]; /*=======================================================================================*/ //Ajout du projet à la liste des projets this._listeProjets.Add(new Projet(nbIntervenants, nbJours, annee, nomProjet, typeProjet)); // on le transforme la liste avec le projet ajouté en xml string xmlOutput = XML_test.ConvertToXml(_listeProjets); // On l'écrit dans un fichier File.WriteAllText("test.xml", xmlOutput); Console.WriteLine("Votre projet a bien été enregistré !"); }