示例#1
0
        /// <summary>
        /// Cherche un cru en fonction de son id
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        public Cru Chercher(string nom)
        {
            Cru cru = null;

            if (con != null)
            {
                if (con.State != ConnectionState.Open)
                {
                    con.Open();
                }

                try
                {
                    IDbCommand com = con.CreateCommand();
                    com.CommandText = "SELECT * FROM Cru WHERE NomCru='" + nom + "'";
                    IDataReader reader = com.ExecuteReader();

                    if (reader.Read())
                    {
                        cru = reader2Cru(reader);
                    }
                }
                finally
                {
                    con.Close();
                }
            }

            return(cru);
        }
示例#2
0
        /// <summary>
        /// Reprend les données d'un cru en base
        /// </summary>
        /// <param name="cru">Cru à reprendre</param>
        public void Relire(Cru cru)
        {
            if (con != null)
            {
                if (con.State != ConnectionState.Open)
                {
                    con.Open();
                }

                try
                {
                    var command = con.CreateCommand();
                    command.CommandText = String.Format("SELECT * FROM CRU WHERE IdCru={0}", cru.Id);
                    var reader = command.ExecuteReader();

                    if (reader.Read())
                    {
                        cru.NomCru = reader["NomCru"].ToString();
                    }
                }
                finally
                {
                    con.Close();
                }
            }
        }
示例#3
0
        /// <summary>
        /// Insert un nouveau cru
        /// </summary>
        /// <param name="cru">Cru à insérer en base</param>
        public void Créer(Cru cru)
        {
            if (con != null)
            {
                if (con.State != ConnectionState.Open)
                {
                    con.Open();
                }

                try
                {
                    var command = con.CreateCommand();
                    command.CommandText = String.Format("INSERT INTO Cru(NomCru) VALUES('{0}');", cru.NomCru);
                    command.ExecuteNonQuery();
                    command.CommandText = "SELECT LAST_INSERT_ID() FROM Cru;";
                    IDataReader reader = command.ExecuteReader();
                    int         id     = 1;
                    if (reader.Read())
                    {
                        Int32.TryParse(reader[0].ToString(), out id);
                    }
                    cru.Id = id;
                }
                finally
                {
                    con.Close();
                }
            }
        }
示例#4
0
        /// <summary>
        /// Converti une ligne de retour de requête en un cru
        /// </summary>
        /// <param name="reader">Reader representant une ligne de réponse</param>
        /// <returns>Cru initialisé</returns>
        private Cru reader2Cru(IDataReader reader)
        {
            var cru = new Cru();
            int id;

            if (Int32.TryParse(reader["IdCru"].ToString(), out id))
            {
                cru.Id = id;
            }
            cru.NomCru = reader["NomCru"].ToString();
            return(cru);
        }
示例#5
0
        /// <summary>
        /// Retire un cru de la base
        /// </summary>
        /// <param name="p">Cru à supprimer</param>
        public void Supprimer(Cru p)
        {
            if (con != null)
            {
                if (con.State != ConnectionState.Open)
                {
                    con.Open();
                }

                try
                {
                    var command = con.CreateCommand();
                    command.CommandText = String.Format("DELETE FROM Cru WHERE IdCru={0}", p.Id);
                    command.ExecuteNonQuery();
                }
                finally
                {
                    con.Close();
                }
            }
        }
示例#6
0
        /// <summary>
        /// Sauvegarde un cru déjà existant en base
        /// </summary>
        /// <param name="cru">Cru à sauvegarder</param>
        public void Sauver(Cru cru)
        {
            if (con != null)
            {
                if (con.State != ConnectionState.Open)
                {
                    con.Open();
                }

                try
                {
                    var command = con.CreateCommand();
                    command.CommandText = String.Format("UPDATE Millesime SET NomCru='{0}' WHERE IdCru={1}", cru.NomCru, cru.Id);
                    command.ExecuteNonQuery();
                }
                finally
                {
                    con.Close();
                }
            }
        }
示例#7
0
        public Bouteilles Lister(Cru c)
        {
            Bouteilles liste = new Bouteilles();

            con.Open();
            try
            {
                IDbCommand com = con.CreateCommand();
                com.CommandText = "SELECT * FROM Bouteille WHERE IdCru=" + c.Id.ToString();
                IDataReader reader = com.ExecuteReader();
                while (reader.Read())
                {
                    Bouteille b = reader2Bouteille(reader);
                    liste.Ajouter(b);
                }
            }
            finally
            {
                con.Close();
            }
            return(liste);
        }
示例#8
0
        private Bouteille reader2BouteilleRecherche(IDataReader reader)
        {
            Bouteille bouteille = new Bouteille();

            bouteille.Texte = reader[1].ToString();
            bouteille.Id    = Convert.ToInt32(reader[0]);
            bouteille.PosX  = Convert.ToInt32(reader[3]);
            bouteille.PosY  = Convert.ToInt32(reader[4]);
            bouteille.Bue   = Convert.ToBoolean(reader[2]);

            Casier c = new Casier();

            c.Id             = Convert.ToInt32(reader[5]);
            c.Nom            = reader[16].ToString();
            bouteille.Casier = c;

            Metier.Type t = new Metier.Type();
            t.Id           = Convert.ToInt32(reader[6]);
            t.NomType      = reader[21].ToString();
            bouteille.Type = t;

            try
            {
                Region r = new Region();
                r.Id             = Convert.ToInt32(reader[7]);
                r.NomRegion      = reader[24].ToString();
                bouteille.Region = r;
            }
            catch { }

            try
            {
                Pays p = new Pays();
                p.Id           = Convert.ToInt32(reader[8]);
                p.NomPays      = reader[26].ToString();
                bouteille.Pays = p;
            }
            catch { }

            try
            {
                Domaine d = new Domaine();
                d.Id              = Convert.ToInt32(reader[9]);
                d.NomDomaine      = reader[28].ToString();
                bouteille.Domaine = d;
            }
            catch { }

            try
            {
                Contenance co = new Contenance();
                co.Id                = Convert.ToInt32(reader[10]);
                co.Valeur            = Convert.ToInt32(reader[30]);
                bouteille.Contenance = co;
            }
            catch { }

            try
            {
                Cru cr = new Cru();
                cr.Id         = Convert.ToInt32(reader[11]);
                cr.NomCru     = reader[32].ToString();
                bouteille.Cru = cr;
            }
            catch { }

            try
            {
                Millesime m = new Millesime();
                m.Id                = Convert.ToInt32(reader[12]);
                m.NomMillesime      = reader[34].ToString();
                bouteille.Millesime = m;
            }
            catch { }

            try
            {
                Type_vinification tv = new Type_vinification();
                tv.Id       = Convert.ToInt32(reader[13]);
                tv.NomVinif = reader[36].ToString();
                bouteille.Type_vinification = tv;
            }
            catch { }

            try
            {
                Appelation a = new Appelation();
                a.Id                 = Convert.ToInt32(reader[14]);
                a.NomAppelation      = reader[38].ToString();
                bouteille.Appelation = a;
            }
            catch { }

            return(bouteille);
        }