Ich möchte eine Zeichenfolge so abschneiden, dass ihre Länge nicht länger als ein bestimmter Wert ist. Ich schreibe in eine Datenbanktabelle und möchte sicherstellen, dass die von mir geschriebenen Werte den Einschränkungen des Datentyps der Spalte entsprechen.
Zum Beispiel wäre es schön, wenn ich folgendes schreiben könnte:
string NormalizeLength(string value, int maxLength)
{
return value.Substring(0, maxLength);
}
Leider löst dies eine Ausnahme aus, da im maxLength
Allgemeinen die Grenzen der Zeichenfolge überschritten werden value
. Natürlich könnte ich eine Funktion wie die folgende schreiben, aber ich hatte gehofft, dass so etwas bereits existiert.
string NormalizeLength(string value, int maxLength)
{
return value.Length <= maxLength ? value : value.Substring(0, maxLength);
}
Wo ist die schwer fassbare API, die diese Aufgabe ausführt? Ist dort eines?
StringBuilder
Nebenbei bemerkt, können Sie durch Verkürzen der Länge abschneiden, müssen jedoch die Längenprüfung durchführen, um eine Verbreiterung der Zeichenfolge zu vermeiden.
.Trim()
dass es irreführend klingt, als würde es die Zeichenfolge mutieren