bonjour,
j'ai un objet reservation qui contient des données du style Client client,Menu menu etc..
j'effectue une requete sql du type "select * from reservation where..."
Je recupere mes données en faisant
puis j'initialise mes objets reservations en faisant
Code : Sélectionner tout - Visualiser dans une fenêtre à part MySqlDataReader resultat = mysql.DoSelectMultiple(sql);
methode InitReservation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 while (resultat.Read()) { reservations.Add(InitReservation(resultat)); }
la methode ClientService.GetClient(Convert.ToInt32(mysqlDataReader[3])); recupere dans la base de donnée les info du client et donc utilise aussi une connexion mysql , de ce faite j'ai une erreur comme quoi ma connexion est deja ouverte ce qui est normal...
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 public static Reservation InitReservation(MySqlDataReader mysqlDataReader) { Reservation reservation = new Reservation(); reservation.Id = Convert.ToInt32(mysqlDataReader[0]); DateTime date = new DateTime(); DateTime.TryParse(mysqlDataReader[1].ToString(), out date); reservation.DateReservation = date; reservation.NbPersonnes = Convert.ToInt32(mysqlDataReader[2]); reservation.ClientRes = ClientService.GetClient(Convert.ToInt32(mysqlDataReader[3])); reservation.Menu = MenuService.GetMenuByID(Convert.ToInt32(mysqlDataReader[4])); reservation.Tables = TableService.GetTablesByReservation(reservation.Id); reservation.Serveurs = ServeurService.GetServeursNbTable(reservation.NbPersonnes); reservation.Clients = ClientService.GetClientsByReservation(reservation.Id); return reservation; }
Si je ferme ma connexion mysql avant le while (resultat.Read()) il ferme aussi le mysqlDataReader.. je suis un peu bloqué la...
je voulais eviter de faire une requete sql avec plein de jointure pour recuperer les informations de la reservation..
Merci
Partager