Bonjour,
J'ai une procédure stockée qui retourne plusieurs résultats grâce à un curseur.
Comment afficher les résultats dans un grid?
Merci
Bonjour,
J'ai une procédure stockée qui retourne plusieurs résultats grâce à un curseur.
Comment afficher les résultats dans un grid?
Merci
tu peut exécuter ton commande dans un sqldatareader dont tu peut parcourir pour extraire les résultats
j’espère être claire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 SqlDataReader _SqlDataReader = _SqlCommand.ExecuteReader(); //read SqlDataReader while (_SqlDataReader .Read()) { string field= Convert.ToString(dr["field"]);//field un champ resultat de command } _SqlDataReader .CloseDataReader();
Si tu aimes ma Réponse pense à cliquer sur
Visiter mon blogEt mes codes sources
- La simulation de navigation dans internet explorer avec Interop.SHDocVw
- Protéger mes données de configuration dans une dll compilée
Je te remercie pour la réponse.
J'ai fais comme tu dis mais j'ai cette erreur :
Sais tu d'où cela vient?Invalid attempt to call Read when reader is closed.
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 SqlConnection conn = new SqlConnection(); SqlCommand command = new SqlCommand("storeProc1", conn); command.Parameters.Add(new SqlParameter("@id", SqlDbType.Int)); command.Parameters["@id"].Value = user.id; command.CommandType = CommandType.StoredProcedure; DataTable dt = new DataTable(); try { conn.Open(); SqlDataReader r = command.ExecuteReader(); while (r.Read()) { dt.Load(r); } grid1.DataSource = dt; grid1.DataBind(); grid1.Visible = true; } catch (SqlException e) { //... }
Bonjour;
pour ton cas c'est suffisant de faire un seul read() mais il va te retoutne ligne
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 SqlConnection conn = new SqlConnection(); SqlCommand command = new SqlCommand("storeProc1", conn); command.Parameters.Add(new SqlParameter("@id", SqlDbType.Int)); command.Parameters["@id"].Value = user.id; command.CommandType = CommandType.StoredProcedure; DataTable dt = new DataTable(); try { conn.Open(); SqlDataReader r = command.ExecuteReader(); r.Read(); dt.Load(r); grid1.DataSource = dt; grid1.DataBind(); grid1.Visible = true; } catch (SqlException e) { //... }
je préfère si tu connait les retournes de ta requête de lire ligne par ligne
Si tu aimes ma Réponse pense à cliquer sur
Visiter mon blogEt mes codes sources
- La simulation de navigation dans internet explorer avec Interop.SHDocVw
- Protéger mes données de configuration dans une dll compilée
Je viens de changer mon code.
Je n'ai plus d'erreur mais ça ne me renvoie aucun résultat, alors que quand j'exécute ma procédure stockée dans SQL server, ça me renvoie bien les résultats escomptés![]()
ok;
il te renvoie quoi ton storeProc1les users ??
Si tu aimes ma Réponse pense à cliquer sur
Visiter mon blogEt mes codes sources
- La simulation de navigation dans internet explorer avec Interop.SHDocVw
- Protéger mes données de configuration dans une dll compilée
Partager