Warum verursacht .ToString () für eine Nullzeichenfolge einen Nullfehler, wenn .ToString () für eine nullfähige Ganzzahl mit Nullwert einwandfrei funktioniert?
selectedItem
hat zwei Felder:
int? _cost
string _serialNumber
In diesem Beispiel_cost
und_serialNumber
vonselectedItem
sind beide null. Ich lese durch die Felder vonselectedItem
über ihre Eigenschaften und das Ausfüllen von Textfeldern mit ihren Werten, wenn ...
TextBox1.Text = selectedItem.Cost.ToString(); //no error
TextBox2.Text = selectedItem.SerialNumber.ToString(); //error
ich verstehe dasSerialNumber.ToString()
ist redundant (weil es bereits eine Zeichenfolge ist), aber ich verstehe nicht, warum dies diese Ausnahme verursacht:
Das Objekt mit dem Wert "null" braucht einen Wert.
int? _cost
ist nullable und hat keinen Wert, aber es gibt mir keine Ausnahme.string _serialNumber
ist nullable und hat noch keinen Werttut gib mir die Ausnahme.DieseFrage Berührt es, fragt der Typ im Wesentlichen dasselbe, aber es gibt keine festgelegte Antwort, und es erklärt auch nicht, warum eine Nullableint
? Kann ich zum Beispiel verwenden.ToString()
auf einem nullbaren int aber nicht auf einem nullstring?