Bonjour,
Je suis depuis ce matin, en train d'essayer de faire un mini formulaire demandant à une personne diverses informations. J'aimerai vérifier, lors de la saisie de l'utilisateur, si l'e-mail saisi existe déjà ou non dans ma base de données.
Du coup, lorsque l'utilisateur clique sur le bouton "Valider", j'ai une condition:
un "if" qui vérifier si l'e-mail existe ou non et un "else" qui valide l'ajout de la personne.
Le TextEmail correspond à la TextBox où l'utilisateur saisi son e-mail. Le ConditionValidation est un espace label où sera afficher l'erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Connect = new SqlConnection("Data Source=**"); Connect.Open(); SqlCommand Compte = new SqlCommand ("SELECT COUNT (UserEmail) FROM Utilisateur where UserEmail=@Email", Connect); Selection.Parameters.Add("@Email", SqlDbType.NVarChar).Value=TextEmail.Text; int resultSelection = Selection.ExecuteScalar(); if (resultSelection>0){ ConditionValidation.Text="L'e-mail saisi existe déjà. Veuillez recommencez."; }
Le hic, c'est que "Selection.ExecuteScalar()" se souligne en m'indiquant que l'on ne peut pas convertir implicitement le type "object" en int. Or, j'ai cherché sur pleins de forums ce souci, et beaucoup utilisent cette méthode pour la même chose, mais n'ont pas d'erreurs. J'ai bien sûr essayé avec le "ExecuteReader()" mais ça me pose le même soucis...
Du coup je ne comprend pas mon erreur ni ne sait comment la résoudre.
Quelqu'un peut-il m'éclairer?
Partager