Как установить значение null для int в С#? int value=0; if (value == 0) { value = null; } Как установить value в null выше? Любая помощь будет оценена. Ответ 1 В .Net вы не можете назначить значение null для int или любой другой структуры. Вместо этого используйте Nullable<int> или int? для краткости: int? value = 0; if (value == 0) { value = null; } Дополнительная литература Nullable Types (Руководство по программированию на С#) Ответ 2 Кроме того, вы не можете использовать "null" в качестве значения в условном присвоении. например... bool testvalue = false; int? myint = (testvalue == true) ? 1234 : null; FAILS с: Type of conditional expression cannot be determined because there is no implicit conversion between 'int' and '<null>'. Итак, вам нужно также указать нуль... Это работает: int? myint = (testvalue == true) ? 1234 : (int?)null; Ответ 3 Вы не можете установить int в null. Вместо этого используйте nullable int (int?): int? value = null; Ответ 4 int не допускает значения null, use - int? value = 0 или используйте Nullable<int> value Ответ 5 Объявите целочисленную переменную как обнуляемую например: int? variable=0; variable=null; Ответ 6 Использовать Null.NullInteger ex: private int _ReservationID = Null.NullInteger;
Ответ 1 В .Net вы не можете назначить значение null для int или любой другой структуры. Вместо этого используйте Nullable<int> или int? для краткости: int? value = 0; if (value == 0) { value = null; } Дополнительная литература Nullable Types (Руководство по программированию на С#)
Ответ 2 Кроме того, вы не можете использовать "null" в качестве значения в условном присвоении. например... bool testvalue = false; int? myint = (testvalue == true) ? 1234 : null; FAILS с: Type of conditional expression cannot be determined because there is no implicit conversion between 'int' and '<null>'. Итак, вам нужно также указать нуль... Это работает: int? myint = (testvalue == true) ? 1234 : (int?)null;
Ответ 3 Вы не можете установить int в null. Вместо этого используйте nullable int (int?): int? value = null;