Gibt es eine Abkürzung, um eine Zeichenfolge in C# zu löschen?Gibt es eine Abkürzung, um eine Zeichenfolge in C# zu enthülsen?
Es wäre das Äquivalent (wenn 'x' ist ein String):
string y = x == null ? "" : x;
Ich glaube, ich bin der Hoffnung, es gibt einige Betreiber, die so etwas wie funktionieren würde:
string y = #x;
Wishful Denken, nicht wahr?
Der nächstgelegene ich bisher bekommen habe ist eine Erweiterung Methode auf der String-Klasse:
public static string ToNotNull(this string value)
{
return value == null ? "" : value;
}
, die mir erlaubt, zu tun:
string y = x.ToNotNull();
Alle Verbesserungen auf, dass jemand,?
Ich vermeide Null-Strings, um dieses Problem zu vermeiden. Wenn jemand anders die Null-Strings erstellt, könnte Gewalt notwendig sein. YMMV. – Greg
Die Tatsache, dass Ihr letztes Beispiel funktioniert, ist ziemlich beängstigend, da Sie eine Methode auf ein Objekt aufrufen, um zu überprüfen, ob das Objekt = null ist. Ich weiß es aufgrund von Erweiterungsmethoden, die statisch sind, aber es fühlt sich irgendwie falsch an, wenn man es betrachtet. – ntziolis
Null-Strings sind böse, instanziieren mit String.Empty und vermeiden Logik wie oben. –