Bonjour a tous,
J'ai créer une fonction qui liste les données de ma table commande. Cette fonction retourne une collection d'objet Commande.
J'ai une erreur dans ma fonction et je me suis dit qu'un Try Catch pourrai m'aider a debugger.
Mais le probleme est : Comment retourner le fameux SqlException sachant que je suis obliger d'avoir en retour une collection d'objet Commande ?
Voici mon code :
Bien entendu j'ai une erreur dans le catch indiquant qu'il est impossible de convertir le type "System.Data.SqlClient.SqlExecption " en type "Commande".
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 static public List<Commande> ListerCommande(int idCom = 0) { List<Commande> listCommande = new List<Commande>(); try { string requete; using (SqlConnection cx = new SqlConnection(ChaineConnexion)) { if (idCom != 0) { requete = "SELECT idcom,idclient,datecom,heure FROM Commande CM, Client C WHERE CM.idclient = C.idclient AND idcom = " + idCom; } else { requete = "SELECT idcom,idclient,datecom,heure FROM Commande CM, Client C WHERE CM.idclient = C.idclient "; } int idcom; int idcli; DateTime datecom; DateTime heure; SqlCommand cmd = new SqlCommand(requete, cx); cx.Open(); SqlDataReader myreader = cmd.ExecuteReader(); while (myreader.Read()) { idcom = myreader.GetInt32(0); idcli = myreader.GetInt32(1); datecom = myreader.GetDateTime(2); heure = myreader.GetDateTime(3); Commande NewCommande = new Commande(idcom, idcli, datecom, heure); listCommande.Add(NewCommande); } } return listCommande; } catch (SqlException ex) { return listCommande.Add((Commande)ex); } }//fin de fonctionListerCommande
Merci de votre aide.
Partager