using System; using System.Collections.Generic; using System.Text; using System.Data; using System.Data.SqlClient; using CG67.FicheCollege.Domaine; using CG67.FicheCollege.Interface; namespace CG67.FicheCollege.Entrepot { public class EntrepotBilinguisme : EntrepotBase, IEntrepotBilinguisme { public Bilinguisme GetByCodeRNEAndAnnee(string codeRNE, int annee) { Bilinguisme resultat = null; using (SqlConnection connexion = new SqlConnection(this.ChaineDeConnexion)) { try { connexion.Open(); using (SqlCommand command = connexion.CreateCommand()) { command.CommandText = "SELECT Niveau, NbEleve FROM Bilinguisme WHERE CodeRne = @RNE AND Annee = @Annee"; command.Parameters.AddWithValue("@RNE", codeRNE); command.Parameters.AddWithValue("@Annee", annee); using (SqlDataReader dr = command.ExecuteReader()) { List lstNiveaux = new List(); int nombreTotalEleves = 0; while (dr.Read()) { lstNiveaux.Add(Convert.ToInt16(dr["Niveau"].ToString())); nombreTotalEleves += Convert.ToInt16(dr["NbEleve"].ToString()); } resultat = new Bilinguisme(lstNiveaux, nombreTotalEleves); } } } catch (Exception erreurInterne) { throw new Exception(" " + erreurInterne); } finally { if (connexion.State == ConnectionState.Open) connexion.Close(); } } return resultat; } } }