Hello how can i remove item from generic list here is my code im trying to do it right but i dont know where i make mistake;/
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;
You have to get the same object to remove, not a copy.
Edit:
Just to clarify an address here, as pst pointed, you could also implement the
IEquatableinterface and some overridings like on the Groo’s answer to make it work, but i think it’s overkill on this specific subject. Giving this as the most common practice, but making clear that it’s also possible to remove items from a list, even if they are diferent instances or even diferent objects with a technique like that.Ref.: http://msdn.microsoft.com/en-us/library/ms131187.aspx