Когда я отлаживал несколько строк кода и спрашивал, почему на земле это не работает, я наткнулся на эту ситуацию...
if(answer.AnswerID == null)
{
// do something
}
Если на самом деле это должно быть так:
if(answer == null)
{
// do something
}
-
answer- объект типаAnswer - a class. -
AnswerIDявляется свойством типаlong.
Странно то, что если вы попробуете что-то вроде этого:
long myLongValue = null;
Компилятор покажет вам ошибку:
Connot convert null to long ...
Итак, мой вопрос: почему я не получил ошибку , когда я пытался сравнить long type с null?
отредактированы
Этот вопрос НЕ о nullable типах.
Я спрашиваю, почему .NET позволяет мне сравнивать длинную переменную с нулем. Я говорю о long type, а не о long? type.