Ich habe eine Liste von Strings. Alle Zeichenfolgen haben Leerzeichen, die in Unterstriche konvertiert werden müssen. Ich bin dazu in der Lage, eine for
oder foreach
-Schleife zu verwenden. Ich bin noch relativ neu in C # und möchte mich damit vertraut machen. Damit ist meine Frage:
Wie kann ich den folgenden Code in .NET 2.0 verwenden? Wenn ich fieldList
am Ende der Operation ConvertAll
überprüfe, hat sich nichts geändert. Gibt es ein Problem mit der Übergabe der Zeichenfolge nach Wert anstelle von Referenz?
Bitte denken Sie daran, dass ich .NET 2.0 verwende und derzeit nicht wechseln kann, so dass ich nicht den Luxus habe, LINQ oder Lambdas zu verwenden.
Sie müssen die Ergebnisse der Methode ConvertAll
der Variablen wie folgt zuweisen:
Die ConvertAll
-Methode gibt ein neues List<T>
zurück, das Sie zuweisen müssen Ergebnis der Methode. Wenn Sie die Variable fieldList
erneut verwenden möchten, ist es möglicherweise besser, eine neue Variable zu erstellen, um die Übersichtlichkeit Ihres Codes zu verbessern:
Wie Marc Gravell unten in einem Kommentar ausführt, können Sie die Syntax dieses Ausdrucks vereinfachen, indem Sie Folgendes tun:
%Vor% ConvertAll
ändert die Eingabeliste nicht. Es gibt eine neue Liste zurück, die das umgewandelte Zeug enthält. By the way, Sie können die new Converter<string,string>
mit C # 2.0 + entfernen:
Außerdem hindert Sie nichts daran, einen C # 3.0-Compiler und LINQBridge und .NET .NET 2.0 zu verwenden.