Bonjour,
Je suis en dernière année de BTS SIO et je dois faire un projet de fin d'année qui consiste en une application lourde liée à une BD distante.
Mon application consiste à permettre à des trésoriers de valider ou modifier des frais entrés préalablement par des demandeurs pour des remboursements dans le cadre d'associations sportives.
La BD a été mise sur le serveur du lycée par une collègue qui a donc du utiliser le proxy du lycée. Actuellement j'essaie de connecter mon application C# à la base de données.
J'ai fait quelques recherches et j'ai donc décidé de créer une classe de connexion à la bdd.
Le code actuel de ma classe ressemble à ça
Ici j'ai donc une erreur lors de l'exécution de la requête dans la méthode ConnexionTres telle que
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
48
49
50
51
52
53
54
55
56
57
58 class ConnexionBDD { private static MySqlConnection connexion; public ConnexionBDD() { InitConnexion(); } private static void InitConnexion() { string connexionString = "SERVER=172.16.193.1;DATABASE=ppe_mll;UID=Dev;PASSWORD=dev$31"; connexion = new MySqlConnection(connexionString); connexion.Open(); } public static bool ConnexionTres(string mailSaisi, string mdpSaisi) { // Défini si le trésorier a renseigné les bons identifiants bool ok = false; // Variable qui va contenir le résultat de la requête string mdpBDD = ""; // Connexion à la base de données InitConnexion(); // Requête SQL MySqlCommand cmd = new MySqlCommand("SELECT MDP FROM tresorier WHERE MAIL='" + mailSaisi + "';"); // Exécution de la requête MySqlDataReader MysqlReader = cmd.ExecuteReader(); // Lecture des données renvoyées (=fetch()) MysqlReader.Read(); mdpBDD = MysqlReader["mail"].ToString(); // On ferme le reader et la requête MysqlReader.Close(); cmd.Dispose(); // Vérification du mot de passe if (mdpBDD != mdpSaisi) { ok = false; } else { ok = true; } // On ferme la connexion connexion.Close(); return ok; } }
System.InvalidOperationException : 'Connection must be valid and open.'
Si quelqu'un peut m'expliquer comment connecter une appli C# à une BD mySql distante avec proxy ou m'aiguiller vers un article, ou peut-être trouver une erreur dans mon code, tout est bon à prendre.
P.S.: J'ai fait des recherches au préalable et je commence à perdre espoir avec le nombre de réponses qui me disent qu'on ne peut pas gérer cette connexion avec un proxy. Donc Merci d'avance à ceux qui répondront.![]()
Partager