Verwenden Sie TrimEnd(',');
, um das letzte Komma aus der Zeichenfolge zu entfernen. string.TrimEnd
Nach der foreach-Schleife:
%Vor%Anstatt die Zeichenfolge zu verketten, können Sie die Klasse StringBuilder verwenden.
Erstens würde ich versuchen, die Werte selbst nicht direkt einzubeziehen. Verwenden Sie Parameter wo möglich - es ist weniger einfach für IN(x, y, z)
style-Parameter, aber Sie können entweder einen Tabellenwertparameter verwenden oder einfach die Parameterliste dynamisch erstellen (z. B. in IN(@p0, @p1, @p2)
)
Zweitens würde ich die Verwendung von String-Verkettungen in einer Schleife vermeiden - benutze StringBuilder
, wenn du wirklich eine Schleife machen musst.
Drittens würde ich string.Join
verwenden, um zu vermeiden, dass man überhaupt eine Schleife machen muss:
Sie können String.Join(",", item);
verwenden
Das bedeutet, dass es kein hässliches Trimmen oder Spalten gibt, das Sie tun müssen.
Ich würde String.Join verwenden:
%Vor%Ich würde auch in die Verwendung von Parametern schauen, anstatt SQL mit starker Verkettung zu konstruieren - String-Verkettungen sind anfällig für SQL-Injection-Angriffe und Parameter sind einfach zu verwenden.
Wie Sie zu Parametern wechseln würden, hängt davon ab, wie Sie auf die Datenbank zugreifen und welche Datenbank-Engine, aber eine schnelle Google-Suche sollte helfen.
Versuchen Sie es mit String.Trim
:
%Vor%Entfernt alle führenden und nachfolgenden Leerzeichen aus dem aktuellen String-Objekt.
Vor allem, wenn Sie die Zeichenfolge zu oft verbinden, verlieren Sie die Performance, da jedes Mal, wenn Sie eine Operation für String var ausführen, die Zuweisung der gesamten Zeichenfolge im Speicher rückgängig gemacht wird. Sie sollten StringBuilder in solchen Situationen verwenden.
%Vor%