private void MenuReserver()
        {
            int    identifiantHotel = SaisieHelper.SaisirEntierPositif(CHAINE_IDENTIFIANT_HOTEL, false);
            int    identifiantOffre = SaisieHelper.SaisirEntierPositif(CHAINE_IDENTIFIANT_OFFRE, false);
            string nom         = SaisieHelper.SaisirChaine(CHAINE_NOM_CLIENT, false);
            string prenom      = SaisieHelper.SaisirChaine(CHAINE_PRENOM_CLIENT, false);
            string numeroCarte = SaisieHelper.SaisirChaine(CHAINE_NUMERO_CARTE_BANCAIRE, false);

            Offre offre = trouverOffre(identifiantHotel, identifiantOffre);

            if (offre != null)
            {
                RequeteReservation requete = new RequeteReservation();
                requete.IdentifiantAgence = identifiantAgence;
                requete.MotDePasseAgence  = motDePasseAgence;
                requete.IdentifiantOffre  = identifiantOffre;
                requete.NomClient         = nom;
                requete.PrenomClient      = prenom;
                requete.NumeroCarteClient = numeroCarte;

                ClientReservationHotelService client = new ClientReservationHotelService(offre.UrlReservation);
                int numeroReservation = client.Reserver(requete).Result;

                Console.WriteLine(CHAINE_NUMERO_RESERVATION + " : " + numeroReservation);
            }
            else
            {
                Console.WriteLine("Erreur : l'offre " + identifiantOffre + " n'existe pas pour l'hotel " + identifiantHotel);
            }
        }
        private void MenuRechercher()
        {
            string   villeHotel  = SaisieHelper.SaisirChaine(CHAINE_VILLE, false);
            DateTime dateArrivee = SaisieHelper.SaisirDate(CHAINE_DATE_ARRIVEE, true);
            DateTime dateDepart  = DateTime.MaxValue;

            if (dateArrivee != default)
            {
                dateDepart = SaisieHelper.SaisirDate(CHAINE_DATE_DEPART, true);
            }
            else
            {
                dateArrivee = DateTime.MinValue;
            }

            if (dateArrivee > dateDepart)
            {
                throw new PeriodeInvalideException(dateArrivee, dateDepart);
            }

            int nbPersonne    = SaisieHelper.SaisirEntierPositif(CHAINE_NOMBRE_PERSONNE, true);
            int nombreEtoiles = SaisieHelper.SaisirEntierPositif(CHAINE_NOMBRE_ETOILES, true);

            List <Offre> offres = new List <Offre>();

            foreach (ClientRechercheHotelService client in Services)
            {
                RequeteRecherche requete = new RequeteRecherche();
                requete.IdentifiantAgence = identifiantAgence;
                requete.MotDePasseAgence  = motDePasseAgence;
                requete.VilleHotel        = villeHotel;
                requete.NombrePersonnes   = nbPersonne;
                requete.DateArrivee       = dateArrivee;
                requete.DateDepart        = dateDepart;
                requete.NombreEtoiles     = nombreEtoiles;

                offres.AddRange(client.Rechercher(requete).Result);
            }

            foreach (Offre offre in offres)
            {
                AfficherResultat(offre);

                Offres.Add(offre);
            }
        }