/// <summary> /// Methode statique permettant de lister les Musiques de l'utilisateur par catégorie /// </summary> /// <param name="numeroCategorie">Numéro de la catégorie concernée</param> /// <param name="nomUtilisateur">Nom de l'utilisateur connecté</param> /// <returns>Liste des Musiques appartenant à l'utilisateur et à la catégorie</returns> public static List <Musique> ListerParCategorie(int numeroCategorie, string nomUtilisateur) { List <Musique> listeMusiques = new List <Musique>(); Musique Musique; string nomFichier = AppDomain.CurrentDomain.BaseDirectory + nomUtilisateur + "\\Musiques.dat"; StreamReader fichier = null; string ligne; // Ouverture du fichier en lecture try { fichier = new StreamReader(nomFichier); if (fichier != null) { // Ajout de tous les Musiques de la catégorie dans la liste while ((ligne = fichier.ReadLine()) != null) { Musique = new Musique(); Musique.Deserialiser(ligne); // Vérification que le Musique appartient à la catégorie souhaitée if (numeroCategorie == Musique.NumeroCategorie) { listeMusiques.Add(Musique); } } } } catch (Exception e) { string message = "Une erreur est survenue durant le traitement.\n Détail de l'erreur :\n" + e.Message; MessageBox.Show(message, "Erreur !", MessageBoxButton.OK, MessageBoxImage.Error); } finally { // Fermeture du fichier if (fichier != null) { fichier.Close(); } } return(listeMusiques); }
/// <summary> /// Méthode statique permettant de rechercher un Musique par son numéro de savoir s'il existe par un booléen passé en paramètre (out) /// </summary> /// <param name="numeroMusique">Numéro du Musique à rechercher</param> /// <param name="nomUtilisateur">Nom de l'utilisateur connecté</param> /// <param name="existe">Booléen indiquant si le Musique existe ou non (out)</param> /// <returns>Instance de la classe Musique contenant les informations du Musique (null si non trouvés)</returns> public static Musique Rechercher(int numeroMusique, string nomUtilisateur, out bool existe) { Musique Musique = new Musique(); string cheminFichier = AppDomain.CurrentDomain.BaseDirectory + nomUtilisateur + "\\Musiques.dat"; StreamReader fichier = null; string ligne; existe = false; try { fichier = new StreamReader(cheminFichier); if (fichier != null) { // On recherche l'utilisateur pour vori s'il existe while ((ligne = fichier.ReadLine()) != null && existe == false) { // Désarialisation du Musique et vérification poru voir s'il s'agit du Musique recherché Musique = new Musique(); if (Musique.Deserialiser(ligne) && Musique.Numero == numeroMusique) { existe = true; } } } } catch (Exception e) { string message = "Une erreur est survenue durant le traitement.\n Détail de l'erreur :\n" + e.Message; MessageBox.Show(message, "Erreur !", MessageBoxButton.OK, MessageBoxImage.Error); } finally { // Fermeture du fichier if (fichier != null) { fichier.Close(); } } return(Musique); }