So Suchen Sie eine Zeichenfolge in der Liste<Tupel<string,string>> in C#
Ich bin eine
List<Tuple<string,string>> tr = new List<Tuple<string,string>>();
tr.Add(new Tuple<string, string>("Test","Add");
tr.Add(new Tuple<string, string>("Welcome","Update");
foreach (var lst in tr)
{
if(lst.Contains("Test"))
MessageBox.Show("Value Avail");
}
Ich nicht dabei....
- Was bedeutet "nicht bestanden" bedeuten?
- was genau ist das problem?
- Ihr code hier gepostet hat eine Menge von Kompilierungs-Fehlern. Fehlendes ')' und lst offensichtlich nicht enthalten eine definition Enthält. Sollten Sie post-code kompilieren können, und zeigt dann Ihr problem. Konstantin Antwort unten löst Ihr Problem.
InformationsquelleAutor Aravind | 2013-01-03
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wohl sollte dies funktionieren:
oder diese
Lesen Tupel-Klasse; Sie müssen Zugriff auf die Werte der Tupel durch
Item1
- und/oderItem2
Eigenschaften.Warum Tupel überhaupt? Vielleicht ist das einfacher:
Wenn Sie möchten, verwenden Sie LINQ:
Diese haben auch den Vorteil, nur mit message-box, wenn der text gefunden wird, mehrere mal (wenn es das ist, was gewünscht wird).
sollte es
foreach (var lst in tr)
nicht lstEvntType, und Sie sollten test für das Tupel ist Item1 Feld statt.Mag das vielleicht jemand anderes helfen. Hier ist die Methode, die ich ging mit:
(Kredit geht hier)
Warum sind Sie iteriert lstEvntType und nicht tr? Sie sollten versuchen, diese:
Ändern
Zu
Wenn Tupel hat mehr Elemente, die Sie hinzufügen müssen-Bedingung für alle Elemente.
Wenn Sie wollen, um es gemeinsam für alle Tupel, die Sie verwenden müssen, um die Reflexion (und die schrulligen Art und Weise).
Mit FindIndex, können Sie die Verfügbarkeit überprüfen und index von element zur gleichen Zeit.