Когда я отлаживал несколько строк кода и спрашивал, почему на земле это не работает, я наткнулся на эту ситуацию...
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
.