Problème au niveau de mes equals pour afficher une liste
Résolu/Fermé
Hamster18
Messages postés
177
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
22 janvier 2024
-
31 mai 2019 à 09:46
Utilisateur anonyme - 3 juin 2019 à 18:40
Utilisateur anonyme - 3 juin 2019 à 18:40
A voir également:
- Problème au niveau de mes equals pour afficher une liste
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Afficher mot de passe wifi android - Guide
- Gertrude a préparé la liste des affaires à prendre pour l'excursion. juliette a modifié cette liste en utilisant le mode suivi des modifications proposé par le traitement de texte. - Guide
- Liste de diffusion whatsapp - Guide
2 réponses
Utilisateur anonyme
31 mai 2019 à 11:32
31 mai 2019 à 11:32
Bonjour, Equals compare les référence, or les strings sont des types valeurs, donc leur références sont toujours différentes
return ListSaison.Where(saison => saison.IdSerie == nomSerie).ToList();
Utilisateur anonyme
Modifié le 31 mai 2019 à 18:45
Modifié le 31 mai 2019 à 18:45
Déjà, ce serait bien, que tu prennes en compte, ce que je t'ai dit dans tes précédents posts.
C'est à cause de ça
et ça
Je te l'ai déjà expliqué et t'ai montré comment coder ça correctement.
Oui elle te retourne toutes les saisons de la série que tu as mis en paramètre, et si equals avait marché ça aurait retourné la même chose.
Si c'est pas ce que tu veux, il faudrait mieux expliquer, car je ne comprends pas.
) cependant ça me provoquer une erreur de dépassement de pile (j'ai du très certainement mal mit prendre) sauf que du coup je voit pas comment mit prendre....
C'est à cause de ça
public List<Saison> ListSaison { get { return GetAll(); } } public List<Saison> GetAll() { return new List<Saison>() { new Saison("Saison 1", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 2", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 3", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 4", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 1", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 2", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 3", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 4", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 5", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), };
et ça
public ObservableCollection<Serie> ListSerie { get { return GetAll(); } } BiblioSaison BiblioSaison { get; set; } = new BiblioSaison(); { return new ObservableCollection<Serie>() { new Serie("Grey's Anatomy",DateTime.Parse("27/03/2005"),true,Categ.Dramatique, "Medias/Photos/Serie_Grey-s_anatomy.jpg", 15, "Meredith Grey, fille d'un chirurgien très réputé, commence son internat de première année en médecine chirurgicale dans un hôpital de Seattle. La jeune femme s'efforce de maintenir de bonnes relations avec ses camarades internes, mais dans ce métier difficile la compétition fait rage...", BiblioSaison.RechercheSaisonDUneSerie("Grey's Anatomy")), new Serie("Lucifer", DateTime.Parse("26/01/2016"), false,Categ.Fantastique, "Medias/Photos/Serie_Lucifer.png", 5, "Lassé et mécontent de sa position de Seigneur des Enfers, Lucifer Morningstar démissionne et abandonne son royaume pour la bouillonnante Los Angeles. Dans la Cité des anges, l'ex maître diabolique est le patron d'un nightclub baptisé Lux.", BiblioSaison.RechercheSaisonDUneSerie("Lucifer")), new Serie("The 100", DateTime.Parse("19/03/2014"),true,Categ.Horreur, "Medias/Photos/Serie_The_100.jpg", 3, "Après une apocalypse nucléaire, les 318 survivants se réfugient dans des stations spatiales et parviennent à y vivre et à se reproduire, atteignant le nombre de 4000 ; 97 ans plus tard, une centaine de jeunes délinquants redescendent sur Terre.", BiblioSaison.RechercheSaisonDUneSerie("The 100")), new Serie("The Walking Dead", DateTime.Parse("20/03/2011"),true,Categ.Action, "Medias/Photos/Serie_The_walking_dead.jpg", 9, "Après une apocalypse ayant transformé la quasi-totalité de la population en zombies, un groupe d'hommes et de femmes mené par l'officier Rick Grimes tente de survivre. Ensemble, ils vont devoir tant bien que mal faire face à ce nouveau monde.", BiblioSaison.RechercheSaisonDUneSerie("The Walking Dead")) }
Je te l'ai déjà expliqué et t'ai montré comment coder ça correctement.
J'avais test cette commande mais elle ne me fait pas de "trie" elle me retourne la liste de saison entière
Oui elle te retourne toutes les saisons de la série que tu as mis en paramètre, et si equals avait marché ça aurait retourné la même chose.
Si c'est pas ce que tu veux, il faudrait mieux expliquer, car je ne comprends pas.
Dans ta classe Saison, j'ai "remplacé" ToString, pour pouvoir te faire la capture d'écran ci-après.
J'ai repris la fenêtre que j'avais utilisé ultérieurement pour toi, avec juste une liste de saisons en local.
J'ai bien les 4 saisons de Lost
/// <summary> /// Override de ToString pour afficher la série et la saison de chaque instance /// </summary> /// <returns></returns> public override string ToString() { return string.Format("{0}, {1}", IdSerie, NomSaison); }
J'ai repris la fenêtre que j'avais utilisé ultérieurement pour toi, avec juste une liste de saisons en local.
BiblioSerie biblioSerie; private List<Saison> lesSaisons = new List<Saison>() { new Saison("Saison 1", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 2", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 3", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 4", "Lost", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 1", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 2", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 3", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 4", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), new Saison("Saison 5", "Grey's Anatomy", "Medias/Photos/Serie_The_walking_dead.jpg"), }; public GenreAction(BiblioSerie BiblioSerie) { InitializeComponent(); biblioSerie = BiblioSerie;//si tu en as besoin ailleurs dans le code behind this.DataContext = biblioSerie;//le datacontexte de la fenetre est cette instance de BiblioSerie List<Saison> saisonsLost = lesSaisons.Where(s => s.IdSerie == "Lost").ToList(); }
J'ai bien les 4 saisons de Lost
Hamster18
Messages postés
177
Date d'inscription
mercredi 2 janvier 2019
Statut
Membre
Dernière intervention
22 janvier 2024
3 juin 2019 à 13:58
3 juin 2019 à 13:58
Bonjour,
Merci pour votre réponse, j'avais laissé met Bibliothèque telle quel car on m'avait conseillée de faire ainsi mais votre méthode et bien meilleur ( je viens de la tester et le temps de démarrage de l'application est bien meilleur !!! ) Merci pour tous vos conseils =).
Cordialement.
Merci pour votre réponse, j'avais laissé met Bibliothèque telle quel car on m'avait conseillée de faire ainsi mais votre méthode et bien meilleur ( je viens de la tester et le temps de démarrage de l'application est bien meilleur !!! ) Merci pour tous vos conseils =).
Cordialement.
Modifié le 31 mai 2019 à 11:50
J'avais test cette commande mais elle ne me fait pas de "trie" elle me retourne la liste de saison entière ... C'est pour cela que j'avais penser equals car il faudrait que ça me compare ce qui est écrit et nom les références, mais d'après ce que vous me dit je suis pas sur la bonne voie... Faudrait-il alors redéfinir la méthode compareTo ?