Свойство value доступно только для чтения и возвращает фактический тип значения. Свойство value никогда не может быть нулевым.
Если вы ожидаете возврата значения, равного null, то проверьте .HasValue, а затем ссылку на значение. Например, если вы хотите присвоить значение Nullable обычному bool, то вам нужно сослаться на его значение:
bool? nullableBool = null;
if (nullableBool.HasValue)
{
bool realBool = nullableBool.Value;
}
Однако следующее не будет скомпилировано:
bool? nullableBool = true;
bool realBool = nullableBool; // Won't work