namespace Webzine.Repository.Contracts { using Webzine.Entity; /// /// Défini une interface pour gérer les opérations de base de données liées aux artistes. /// public interface IArtisteRepository { /// /// Ajoute un nouvel artiste. /// /// L'artiste à ajouter à la collection. Ne peut pas être null. void Add(Artiste artiste); /// /// Supprime un artiste. /// /// L'artiste à supprimer. void Delete(Artiste artiste); /// /// Récupère un artiste par son identifiant unique. Si aucun artiste n'est trouvé, retourne null. /// /// L'identifiant de l'artiste. /// Artiste Find(int id); /// /// Récupère un artiste par son nom. Si aucun artiste n'est trouvé, retourne null. /// /// Le nom de l'artiste. /// L'artiste recherché ou null. Artiste FindByName(string name); /// /// Récupère tous les artistes disponibles dans la collection. Si aucun artiste n'est trouvé, retourne une collection vide. /// /// Retourne une collection d'artistes. IEnumerable FindAll(); /// /// Met à jour les informations d'un artiste existant dans la collection. /// /// L'artiste à mettre à jour. void Update(Artiste artiste); } }