Нет, вы не можете разыграть int
до DBNull.Value
. Это используется для оценки содержимого полей базы данных, а не обнуляемых типов. Значение обнуляемого типа будет просто null
.
Лучше, чем определенная вами функция, - использовать нуль-оператор объединения (??
).
У него очень похожая логика на ту, которую вы пытались создать в своей функции. Рассмотрим следующие строки кода:
// Declare a nullable int, and set it to null
int? x = null;
// Assign int y to x, unless x is null, in which case, set y = -1
int y = x ?? -1;
// The variable y now has a value of -1
Console.WriteLine(y);