Beispiel #1
0
        /// <summary>
        /// La méthode Init_Livres initialise la liste des Livres
        /// </summary>
        /// <param name="liv">Une liste de livres est passé en paramètre</param>
        public static void Init_Livres(Livres liv)
        {
            try
            {
                //On nettoie la collection de livres 28/03
                liv.Clear();
                String[] result = new String[3];

                // La requète SQL 28/03
                String strSql = "SELECT * FROM LIVRE";

                // On execute la requete
                DbDataReader sqlRdr = DAO.Execute_Query(strSql);        // IDataReader a la place du DbDataReader (sans modif) ?

                // On lit toutes les colonnes de la ligne
                while (sqlRdr.Read())
                {
                    if (!sqlRdr.IsDBNull(0))
                    {
                        result[0] = sqlRdr.GetString(0);
                    }
                    else
                    {
                        result[0] = "<nc>";
                    }
                    if (!sqlRdr.IsDBNull(1))
                    {
                        result[1] = sqlRdr.GetString(1);
                    }
                    else
                    {
                        result[1] = "<nc>";
                    }
                    if (!sqlRdr.IsDBNull(2))
                    {
                        result[2] = sqlRdr.GetString(2);
                    }
                    else
                    {
                        result[2] = "<nc>";
                    }

                    // On ajoute le livre dans la liste
                    liv.Add(new Livre(result[0], result[1], result[2]));

                    //nb_livre += 1;
                }
                sqlRdr.Close();       // On ferme la requete
                sqlRdr = null;
            }
            catch (Exception)
            {
                // ==> S'il y a une erreur, la LISTE est vide
            }
        }
        //****   Methode de recherche des Themes             ******
        //****   portant un Libelle passé en parametre       ******
        public Livres recherche_par_code(string isbn)
        {
            // Recupération des infos selon un NOM
            Livres liste = new Livres();

            liste.Clear();

            ////****     Version avec LISTE ou TABLEAU  ***
            foreach (Livre l in this)
            {
                if (l.CodeISBN == isbn)
                {
                    liste.Add(l);
                    break;
                }
            }
            return(liste);
        }
        //****   Methode de recherche des Livres             ******
        //****   portant un titre passé en parametre         ******
        public Livres recherche_par_titre(string titr)
        {
            // Recupération des infos selon un Titre
            Livres liste = new Livres();

            liste.Clear();

            ////****     Version avec LISTE ou TABLEAU  ***
            foreach (Livre l in this)
            {
                if (l.TitreLivre == titr)
                {
                    liste.Add(l);
                    break;
                }
            }
            return(liste);
        }