Bonjour,
la partie de ce code sert a retrouver et afficher des clefs primaires (présente dans une base de données) qui me seront utile par la suite ainsi que des information sur ma base de donnée. J'affiche tout sa dans un datagried.
Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 dg_supprimer_periapherique.Rows.Clear();
            SqlConnection myConnection;
            SqlCommand myCommand;
            string myConnectionString;
 
            myConnectionString = "user id=sa;password=password69;initial catalog=Config_bureau;data source=JO-PC\\SQLEXPRESSMAJ;Connect Timeout=10;";
 
            string Requete = "SELECT ID_PK, marque_Peri, modele_Peri, type_Peri FROM dbo.Peripherique WHERE ID_poste = '" + tb_supprimer_peripherique_recherche_par_idposte.Text + "';";
 
            string  marque_peri = null, model_peri = null, type_peri = null;
            int id_pk = 0, idposte = 0;
 
            try
            {
                myConnection = new SqlConnection(myConnectionString);      
                myConnection.Open();
                myCommand = new SqlCommand(Requete, myConnection);
                SqlDataReader mySqDataReader = myCommand.ExecuteReader(); 
                while (mySqDataReader.Read())
                {             
 
                    if (mySqDataReader["ID_poste"] != System.DBNull.Value)
                    {
                        idposte = (int)mySqDataReader["ID_poste"];
                    }
                    if (mySqDataReader["ID_PK"] != System.DBNull.Value) 
                    {
                        id_pk = (int)mySqDataReader["ID_PK"];
                    }
                    if (mySqDataReader["marque_Peri"] != System.DBNull.Value)
                    {
                        marque_peri = (string)mySqDataReader["marque_Peri"];
                    }
                    if (mySqDataReader["modele_Peri"] != System.DBNull.Value)
                    {
                        model_peri = (string)mySqDataReader["modele_Peri"];
                    }
                    if (mySqDataReader["type_Peri"] != System.DBNull.Value)
                    {
                        type_peri = (string)mySqDataReader["type_Peri"];
                    }                    
                    this.dg_supprimer_periapherique.Rows.Add(null, idposte, null, null, Convert.ToString(id_pk), marque_peri, model_peri, type_peri);
                }
                myConnection.Close();
            }
            finally
            {
            }
Le programme de ne réagit pas tout le temps pareil par moment il ne m'affiche rien dans le datagrieb mais il ne plante pas, puis a certain moment il me signale une erreur suivante.

L'exception index out of ranger exception 'a pas été gérée
ID_poste
PS: j'ai déjà injecté ma commande SQL a mon serveur SQL et tout vas bien.
Pour essayer de résoudre ce problème j'ai déplacer les "if" d'ordre il s’avère que le premier "if" fait planter le programme ID_poste n'a surement donc pas une grande importance.

Merci d'avoir prit le temps de lire mon probléme =)