namespace Webzine.Repository.Contracts
{
using Webzine.Entity;
///
/// Interface de repository pour les commentaires.
///
public interface ICommentaireRepository
{
///
/// Ajoute un commentaire à la source de données.
///
/// Commentaire à ajouter.
void Add(Commentaire commentaire);
///
/// Supprime un commentaire de la source de données.
///
/// Commentaire à supprimer.
void Delete(Commentaire commentaire);
///
/// Trouve un commentaire par son ID.
///
/// ID du commentaire à trouver.
/// Le commentaire trouvé, ou null si non trouvé.
Commentaire Find(int id);
///
/// Retourne tous les commentaires de la source de données.
///
/// Une collection de commentaires.
IEnumerable FindAll();
///
/// Retourne une collection de commentaires paginée à partir de la source de données.
///
/// Le nombre de commentaires à ignorer avant de commencer à
/// récupérer les commentaires.
/// Le nombre maximum de commentaires à récupérer.
/// Une collection de commentaires paginée.
IEnumerable FindCommentaires(int offset, int limit);
}
}