Elegante Methode zum Erstellen einer kommagetrennten Liste und zum Entfernen von nachem Komma [duplizieren]

8

Wenn ich kommagetrennte Listen erstelle, hasse ich, wie ich das nachlaufende Komma abhacken muss.

Gibt es einen besseren Weg? Ich mache das ziemlich oft so auf der Suche nach Meinungen.

%Vor%     
loyalflow 07.03.2013, 21:27
quelle

5 Antworten

21

Verwenden Sie String.Join und Linqs IEnumerable.Wählen Erweiterungsmethode.

%Vor%     
p.s.w.g 07.03.2013 21:28
quelle
6

Beschreibung

Sie können die Methode String.Join und Enumerable.Select (Namespace System.Linq)

verwenden
  

String.Join Verkettet alle Elemente eines Zeichenfolgenarrays mit dem angegebenen Trennzeichen zwischen den einzelnen Elementen.

     

Enumerable.Select Projiziert jedes Element einer Sequenz in ein neues Formular.

Beispiel

%Vor%

Weitere Informationen

dknaack 07.03.2013 21:28
quelle
3

Basisfall:

%Vor%

mit Null-Checks:

%Vor%

mit Null / Leer-Checks:

%Vor%

mit Trimmen:

%Vor%

mit beiden:

%Vor%     
D Stanley 07.03.2013 21:29
quelle
1

Wenn Leistung ein Problem ist, würde ich dies nicht vorschlagen, aber es ist möglich, die Methode Aggregate von LINQ zu verwenden, um eine solche Verkettung durchzuführen.

z.B.

%Vor%

Dies könnte jedoch nützlich sein, wenn Ihre Verknüpfungslogik komplizierter wird (ein seltenes Ereignis, das ich vermuten würde).

    
Kenneth K. 07.03.2013 22:39
quelle
0

Und eine unelegante Lösung ohne Join

%Vor%     
Olaf Dietsche 07.03.2013 22:26
quelle

Tags und Links