selectedItem имеет два поля:
-
int? _cost -
string _serialNumber
В этом примере _cost и _serialNumber of selectedItem BOTH null. Я читаю поля selectedItem через их свойства и заполняя текстовые поля своими значениями, когда...
TextBox1.Text = selectedItem.Cost.ToString(); //no error
TextBox2.Text = selectedItem.SerialNumber.ToString(); //error
Я понимаю, что SerialNumber.ToString() избыточно (потому что это уже строка), но я не понимаю, почему это вызывает это исключение:
Nullable object должен иметь значение.
-
int? _costимеет значение NULL и не имеет значения, но это не дает мне исключения. -
string _serialNumberимеет значение NULL и не имеет значения, но делает исключение.
Этот question затрагивает это, парень по сути задает одно и то же, но нет назначенного ответа, и он также не объясняет, почему nullable int? Например, могу ли я использовать .ToString() в nullable int, но не в нулевой строке?