2017-05-22 5 views
0

Ich habe eine Liste von string:Löschen Elemente in einer Liste basierend auf ihren Wert in ASP.NET

List<string> productsAll = new List<string>(); 
productsAll.Add("CMT_40"); 
productsAll.Add("CMT_50"); 
productsAll.Add("Mortar"); 

Wie entferne ich die Einzelteile an productsAll ohne productsAll.RemoveAt zu verwenden?

Ich kann den Wert nicht basierend auf Index löschen, wie productsAll wird stark mit jeder Interaktionen auf der Seite geändert werden.

+0

Wenn Ihre Werte sind einzigartig Ich empfehle, mit [Hashset] (https://msdn.microsoft.com/en-us /library/bb359438.aspx) anstelle von List (of String) für Effizienz – Esko

Antwort

0

Remove löschen möchten ist eine nette Option, um ein bestimmtes Element aus der Liste zu entfernen. Wenn Sie mehr als ein Element entfernen möchten, bedeutet das, dass Sie ca Versuchen Sie auch RemoveAll. Sie können den folgenden Code versuchen:

List<string> productsAll = new List<string>(); 
productsAll.Add("CMT_40"); 
productsAll.Add("CMT_50"); 
productsAll.Add("Mortar"); 
productsAll.Add("Mortar"); 
productsAll.Add("Mortar"); 
string itemToRemove = "Mortar"; 

productsAll.RemoveAll(x=>x==itemToRemove); 

prüfen this Example für Demo arbeiten. Sie können auch versuchen, Elemente zu entfernen, die mit dem folgenden Code unter Verwendung .Contains() bestimmten Text enthält:

productsAll.RemoveAll(x=>x.Contains(itemToRemove));  
Verwandte Themen