Wie konvertiere ich eine null-int in eine Zeichenfolge, die sicher sein wird für die Computer in verschiedenen Gebietsschemas?
Ich die Umwandlung einer nullable integer
zu einem string
, und Resharper warnt mich InvariantCulture verwenden.
shipment.ShipmentID.ToString()
Einen schnellen Alt-Enter, Geben Sie später, gibt mir dies:
shipment.ShipmentID.ToString(CultureInfo.InvariantCulture)
Leider, Resharper ist nicht zufrieden und schlägt vor, die gleiche Sache, die keinen Sinn für mich.
shipment.ShipmentID.ToString(CultureInfo.InvariantCulture,
CultureInfo.InvariantCulture)
ToString() auf die nullable int wird nicht bauen, da er mir eine Fehlermeldung, die besagt Keine überlast-Methode 'ToString' nimmt 1 Argumente.
Non-nullable int-Werte Verhalten sich anders.
int requiredInt = 3;
//no Resharper or compiler warning
var stringFromRequiredInt = requiredInt.ToString(CultureInfo.InvariantCulture);
Was sollte ich tun, um zu konvertieren eine nullable int
zu einem string
, die sicher sein wird für die Computer in verschiedenen Gebietsschemas?
- Was passiert, wenn Sie Versand.ShipmentID.Wert? Mit nullable-Typen, die ich in der Regel auf null prüfen mit Hilfe der .HasValue boolean und verwenden Sie dann die .Wert.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nullable<T>
nichtToString()
überlastung mit Argumenten; ReSharper ist nicht ganz Umgang mit der situation richtig.Seit
default(Nullable<int>).ToString()
zurückstring.Empty
können Sie ReSharper glücklich wie diese:Alternativ:
Überprüfen Sie diese link.
UPDATE: So einer der wichtigsten Zwecke zu verwenden, könnte es sein, z.B. 'if' - Anweisung Vergleich.