/*Cette methode prend en parametre l'identifaint d'un client et renvoie la liste */ public static List <Facture> GetFactures(int idClient, int date) { var listeFacture = new List <Facture>(); // Création d'une commande et definition de code sql à exécuter var cmd = new SqlCommand(); cmd.CommandText = @" SELECT f.IdClient,f.Id,f.DateFacture,f.DatePaiement,f.CodeModePaiement FROM Facture f INNER JOIN Client c ON c.Id = f.IdClient WHERE c.Id =@idClient and year(f.DateFacture)=@date order by f.Id" ; // Création des paramètres cmd.Parameters.Add(new SqlParameter { SqlDbType = SqlDbType.Int, ParameterName = "@date", Value = date, }); cmd.Parameters.Add(new SqlParameter { SqlDbType = SqlDbType.Int, ParameterName = "@idClient", Value = idClient, }); using (var conn = new SqlConnection(Settings1.Default.GrandHotelConnexion)) { // Affection d'une connexion à la commande cmd.Connection = conn; // Ouverture d'une connexion conn.Open(); // Execution d'une commande en récupérant son résultat dans un objet SqlDataRedader using (SqlDataReader reader = cmd.ExecuteReader()) { // Lecture les lignes de résultat une par une while (reader.Read()) { // Création pour chacun un objet qu'on ajoute à la liste var item = new Facture(); item.Id = (int)reader["Id"]; item.IdClient = (int)reader["IdClient"]; item.DateFacture = (DateTime)reader["DateFacture"]; item.DatePaiement = (DateTime)reader["DatePaiement"]; item.CodeModePaiement = (string)reader["CodeModePaiement"]; listeFacture.Add(item); } } }// Fermeture de la connexion par "using" return(listeFacture); }
// ajout d'une facture public void AddFacture(Facture fact) { Factures.Add(fact); SaveChanges(); }