public static List <Personne> GetByPays(string pays)
        {
            List <Personne> liste = null;

            //string connStr = ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;
            //using (SqlConnection conn = new SqlConnection(connStr))
            using (SqlConnection conn = new SqlConnection(connectionString: @"Data Source=VIEWW7-2013-408\SQLEXPRESS;Initial Catalog=tp_gestionContact;Integrated Security=True;Connect Timeout=5"))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = @"SELECT P.id, nom, prenom,age, PR.titre, nomEntreprise, CP.titre, telephone, fax, email, rue, code_postal,ville,pays
                FROM personne P JOIN profession PR ON PR.id_personne = P.id
				JOIN categoriePersonne CP ON CP.id_personne = P.id
				JOIN coordonnees C ON P.id = C.id_personne
				JOIN adresse A ON A.id_personne = P.id
                WHERE A.pays = @Pays";
                    cmd.Parameters.Add(new SqlParameter("@Pays", pays));
                    // cmd.Parameters.AddWithValue("@Pays", pays);
                    using (SqlDataReader reader = cmd.ExecuteReader())
                    {
                        liste = new List <Personne>();
                        while (reader.Read())
                        {
                            Personne p = new Personne();
                            p.Id         = reader.GetInt32(0);
                            p.Nom        = reader.GetString(1);
                            p.Prenom     = reader.GetString(2);
                            p.Age        = reader.GetInt32(3);
                            p.Profession = new Profession(p.Id, reader.GetString(4), reader.GetString(5), p.Id);
                            p.Categorie  = new CategoriePersonne(p.Id, reader.GetString(6), p.Id);
                            p.Coord      = new Coordonnees(p.Id, reader.GetString(7), reader.GetString(8), reader.GetString(9), p.Id);
                            p.Adresse    = new Adresse(p.Id, reader.GetString(10), reader.GetString(11), reader.GetString(12), reader.GetString(13), p.Id);
                            liste.Add(p);
                        }
                    }
                }
            }
            Console.WriteLine("taille GetByPays: " + liste.Count);
            return(liste);
        }
示例#2
0
 public void Save(Personne personne)
 {
     Session.SaveOrUpdate(personne);
     Session.Flush();
 }
示例#3
0
        /// <summary>
        /// Permet de récupérer une personne de la DB via son identifiant
        /// </summary>
        /// <param name="identifiant">l'identifiant de la personne (registre national)</param>
        /// <param name="p">La personne a remplir</param>
        /// <returns>Une instance de personne completée par les infos de la DB</returns>
        public static Personne getInfo(string identifiant, Personne p = null)
        {
            //1 - Créér mon objet connection
            // SqlConnection oConn = new SqlConnection(@"Server=MIKE-PC\TFTIC;Database=MedicoDB;User Id=MedicoUser;Password=medicopass;");
            //ou
            SqlConnection oConn = new SqlConnection(DAL.Properties.Settings.Default.ConnectionString);

            //2 - Connectez-vous
            try
            {
                oConn.Open();

                //3- Construction de ma requête
                string query = @"select * from Personne 
                                where numRegNational='" + identifiant + "'";
                //4- Création de notre SqlDataReader
                SqlDataReader oDr;

                //5- Creation la command
                SqlCommand oCmd = new SqlCommand(query, oConn);

                //6- Exécution de la command
                oDr = oCmd.ExecuteReader();

                //7- Parcourir les données renvoyées
                //7.1 - Y'a-t-il des données ??
                if (oDr.HasRows)  //retourne true si min 1 ligne dans notre reader
                {
                    //7.2- Boucle de parcours
                    while (oDr.Read())  //tant que je sais lire des données
                    {
                        //7.2.1- Construction de l'objet personne
                        p = p ?? new Personne();
                        p.NumRegNational = oDr["numRegNational"].ToString();
                        // ou p.NumRegNational = oDr.GetString(0);
                        // ou p.NumRegNational= oDr[0].ToString();
                        p.Nom           = oDr["nom"].ToString();
                        p.Prenom        = oDr["prenom"].ToString();
                        p.DateNaissance = DateTime.Parse(oDr["dateNaissance"].ToString());
                        p.Sexe          = oDr["sexe"].ToString()[0];
                        p.Adresse       = oDr["adresse"].ToString();
                        if (oDr["codePostal"].ToString() != "")
                        {
                            p.CodePostal = int.Parse(oDr["codePostal"].ToString());
                        }

                        p.Ville       = oDr["ville"].ToString();
                        p.AdresseMail = oDr["adresseMail"].ToString();
                        p.Pays        = oDr["pays"].ToString();
                        p.TelFixe     = oDr["telFixe"].ToString();
                        p.TelMobile   = oDr["telMobile"].ToString();

                        //7.3 - Fermer le datareader
                        oDr.Close();
                        //8- renvoi de la personne
                        return(p);
                    }
                }
                else
                {
                    //7.3 Pas de données donc fermeture
                    // du datareader et renvoit de null
                    oDr.Close();
                    return(null);
                }
            }
            catch (Exception)
            {
                return(null);
            }

            return(null);
        }