14 votes

"List.Remove" en C# ne supprime pas l'élément ?

Bonjour, comment supprimer un élément d'une liste générique ? Voici mon code, j'essaie de le faire correctement mais je ne sais pas où je fais une erreur;/

Users us_end = new Users();
foreach (var VARIABLE in ((List<Users>)Application["Users_On"]))
{
    if(VARIABLE.Id == (int)Session["Current_Id"])
    {
        us_end.Name = VARIABLE.Name;
        us_end.Id = VARIABLE.Id;
        us_end.Data = VARIABLE.Data;
    }
}
List<Users> us = ((List<Users>)Application["Users_On"]);
us.Remove(us_end);
Application["Users_On"] = us;

0voto

Jakub Points 55

Comme quelqu'un l'a dit dans les réponses précédentes : l'égalité des objets est comparée par référence dans .NET. Mais vous pouvez bénéficier de la différence entre les classes et les structures en transformant simplement votre élément T à l'intérieur de List de classe en structure.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X