Déja plutot que de faire ce que tu fais, fais ceci :
String sqlConn = "Persist Security Info=False; Integrated Security=SSPI; Initial Catalog=Formulaire; Data Source=localhost";
SqlConnection cnx = new SqlConnection(sqlconn);
SqlCommand cmd = new SqlCommand("insert into Client( indentifiant, Nom, Prenom, Adresse, Ville,Code_Postal) values (@id,@nom,@prenom,@adresse,@ville, @CP)");
cmd.commandType = StoredProcedure;
cmd.parameters.add("@id", this.ident.text) ;
etc...
ou
SqlParameter p = new SqlParameter("@ID", DBType.Int) ;
p.value = (int)this.ident.Text ;
cmd.parameter.add(p);
Les procédures stockées t'eviteront beaucoup de problème, et si par exemple tu devais inserer une date, il suffirait de dire que ton sqlparameter et de type date et de passer un datetime a value, ce qui est beaucoup plus simple que d'essayer de convertir en un format pour sql.
Ensuite Le problème est, je pense, a cause du datareader, car ta requete ne retourne rien donc il faut faire cmd.executenonquery() qui retourne un integer indiquant le nombre de ligne affecté donc pas besoin de datareader.
Cyril -
MVS -
MCP ASP