In C#, wenn ich eine List<T>
, und ich habe ein Objekt vom Typ T
, wie kann ich einen bestimmten Artikel in der List<T>
mit dem Objekt vom Typ T
ersetzen? HierErsetzen Sie ein Objekt in einer Liste von Objekten
ist, was ich versucht habe:
List<CustomListItem> customListItems = new List<CustomListItem>();
CustomListItem customListItem1 = new CustomListItem() { name = "Item 1", date = DateTime.MinValue};
CustomListItem customListItem2 = new CustomListItem() { name = "Item 2", date = DateTime.MinValue };
CustomListItem customListItem3 = new CustomListItem() { name = "Item 3", date = DateTime.MinValue };
customListItems.Add(customListItem1);
customListItems.Add(customListItem2);
customListItems.Add(customListItem3);
CustomListItem newCustomListItem = new CustomListItem() { name = "Item 4", date = DateTime.Now };
customListItem2 = customListItems.Where(i=> i.name == "Item 2").First();
customListItem2 = newCustomListItem;
In dem obigen Code, ich möchte den customListItem2
mit dem newCustomListItem
ersetzen.
Muss ich den Artikel in der Liste entfernen und dann den neuen Artikel einfügen? Kann ich keine einfache Zuweisung von customListItem2 = newCustomListItem
machen?
Wie kann ein Artikel in einer Liste am effizientesten durch einen anderen Artikel ersetzt werden?
Vielen Dank im Voraus
Haben Sie http geprüft: // Stackoverflow. com/questions/17188966/how-to-replace-Liste-Artikel-in-Best-Weg? – haim770
Zusätzlich zu den Lösungen, die bereits veröffentlicht wurden, sollten Sie auch einen Equals/GetHashCode für Ihren benutzerdefinierten Typ implementieren, andernfalls kann Ihre Where/Index-Operation möglicherweise nicht das richtige Element finden. – HimBromBeere