private static char enterReservation(Representation rep) { char choix = '\u0000'; //unicode de null Client _client = null; string _places = null; do { Console.Clear(); Console.WriteLine("--- {0} ---", rep.ToString()); Console.WriteLine(Environment.NewLine); Console.WriteLine("--- Nouvelle réservation ---"); Console.WriteLine(Environment.NewLine); /* * saisir les informations */ bool cliOK = true; do { Console.Clear(); Console.WriteLine("--- Choisissez un client dans la liste ---"); Console.WriteLine(Environment.NewLine); /* * afficher les clients */ int num = 0; foreach (Client client in fc.clients) { num++; Console.WriteLine("{0} - {1}", num, client.ToString()); } /* * choisir le client dans la liste */ Console.Write("Saisir le n° du client : "); int numSaisi = int.Parse(Console.ReadLine()); //le client existe-t-il ? if (numSaisi > 0 && numSaisi <= fc.clients.Count) { cliOK = true; //conserver la référence du client choisi _client = fc.clients.ElementAt(numSaisi - 1); } else { cliOK = false; Console.WriteLine("Ce client n'existe pas ! Appuyez sur une touche pour revoir la liste."); Console.ReadKey(); } } while (!cliOK); Console.Clear(); Console.WriteLine("--- {0} ---", rep.ToString()); Console.WriteLine(Environment.NewLine); Console.WriteLine("--- Nouvelle réservation ---"); Console.WriteLine(Environment.NewLine); Console.WriteLine("Client : {0}", _client.ToString()); Console.Write("Nb places souhaitées ({0} disponibles) : ",rep.placesDispo); _places = Console.ReadLine(); Console.WriteLine("Montant : {0}", rep.tarif * int.Parse(_places)); Console.WriteLine(Environment.NewLine); Console.WriteLine("V. valider - P. Retour menu principal"); choix = Console.ReadKey().KeyChar; switch (choix) { case 'v': case 'V': try { /* * ajouter la reservation à la représentation */ rep.ajouterReservation(_client,int.Parse(_places)); } catch (Exception) { Console.WriteLine("Erreur lors de la création de la représentation."); } break; } } while (choix != 'p' && choix != 'P' && choix != 'v' && choix != 'V'); return choix; }