Bonjour à tous,
J'ai de la difficulté à utiliser les catch, j'ai toujours des erreur à la compilation qui m'empêche d'utiliser les résultat.
Exemple :
Cependant si la personne n'a pas entré sont email cela lève un exception se qui est normal. Quand j'essaie de traiter cette exception avec un try catch de l'exception sql cela me donne un erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public string getQuestion() { SqlConnection SqlCnx = new SqlConnection("workstation id=SERVER;packet size=4096;user id=xxx;data source=\"SERVER\\SQLSERVER\";persist security info=False;initial catalog=infosalvage;password=xxx"); string SQL = "SELECT SecretQ FROM cust WHERE EmailWork = '"+usrMail.Text+"'"; SqlCommand myCommand = new SqlCommand(SQL, SqlCnx); SqlCnx.Open(); SqlDataReader SqlData = myCommand.ExecuteReader(); SqlData.Read(); string db_SecretQ = Convert.ToString(SqlData.GetValue(0)); return db_SecretQ.ToString(); SqlData.Close(); SqlCnx.Close(); }
Mon catch est comme ceci :
J'ai esseyer avec un if pour voir la différence mais cela me donne la même erreur.
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 public string getQuestion() { try { SqlConnection SqlCnx = new SqlConnection("workstation id=SERVER;packet size=4096;user id=xxx;data source=\"SERVER\\SQLSERVER\";persist security info=False;initial catalog=infosalvage;password=xxx"); string SQL = "SELECT SecretQ FROM cust WHERE EmailWork = '" + usrMail.Text + "'"; SqlCommand myCommand = new SqlCommand(SQL, SqlCnx); SqlCnx.Open(); SqlDataReader SqlData = myCommand.ExecuteReader(); SqlData.Read(); string db_SecretQ = Convert.ToString(SqlData.GetValue(0)); return db_SecretQ.ToString(); SqlData.Close(); SqlCnx.Close(); } catch (SqlException ex) { System.Diagnostics.Trace.WriteLine("[getQuestion] Exception " + ex.Message); } }
Voici L'erreur :
J'ai souvent se genre de problème avec les catch, il doit y avoir quelque chose que je n'ai pas bien comprit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 'members.Login.getQuestion()': not all code paths return a value
Merci pour votre aide.
Partager