Por que .ToString () em uma string nula causa um erro nulo, quando .ToString () funciona bem em um int anulável com valor nulo?
selectedItem
tem dois campos:
int? _cost
string _serialNumber
Neste exemplo,_cost
e_serialNumber
doselectedItem
são BOTH null. Eu estou lendo através dos campos deselectedItem
através de suas propriedades, e preenchendo caixas de texto com seus valores, quando ...
TextBox1.Text = selectedItem.Cost.ToString(); //no error
TextBox2.Text = selectedItem.SerialNumber.ToString(); //error
Eu entendi aquiloSerialNumber.ToString()
é redundante (porque já é uma string), mas não entendo porque isso causa essa exceção:
Objecto nulo deve ter um valor.
int? _cost
é anulável e não tem um valor, mas não me dá a exceção.string _serialNumber
é anulável e não tem valor.faz me dê a exceção.estequestão toca nele, o cara está essencialmente perguntando a mesma coisa, mas não há resposta designada, e também não explica por que uma taxa anulávelint
? Por exemplo, posso usar.ToString()
em um int anulável, mas não em uma string nula?