Как преобразовать поле SQLITE INTEGER в int? - PullRequest
0 голосов
/ 21 ноября 2018

Я хотел бы преобразовать данные INTEGER из базы данных sqlite в "int?".

Я пытался считывать ["Field1"] как int ?, но результат всегда "нулевой", независимо отреальное значение.

Спасибо.

edit: В сообщении была допущена ошибка "INTEGER", а не "NUMERIC"

1 Ответ

0 голосов
/ 21 ноября 2018

Вероятно, ваша основная проблема в том, что ваша ценность не null, а DbNull.Value.Поэтому для правильной обработки этого потребуется встроенный синтаксис SqlReader или условный оператор.

if(reader["Field"] != DbNull.Value)
{
     // If a database null value is not found, attempt to cast.
}

Другая проблема, с которой вы можете столкнуться, - числовое значение может иметь точность в правой части десятичного числа, поэтомуимейте это в виду при попытке сыграть.Например, вы можете использовать десятичную дробь.

...