Средство чтения данных MySQL и флажок

Я хочу прочитать значения NULL из базы данных, если это не NULL, я хочу установить флажки, но этот код не работает.

if (dr["p51"] != null)
{
chkP51.Checked = true;
}

person Kevin Rodriguez    schedule 20.04.2015    source источник


Ответы (1)


Проверьте нулевые значения, используя DataRow.IsNull(string columnName ). Измените свой код следующим образом.

if (!dr.IsNull("p51"))
{
    chkP51.Checked = true;
}

Наконец, из предложения @Kevin Rodriguez, потому что dr["p51"] возвращает 0

if ((string)dr["p51"] == "0")
{
    chkP51.Checked = true;
}
person Jarachanthan Ratnakumar    schedule 20.04.2015
comment
нет свойства IsNull только dr.IsDBNull - person Kevin Rodriguez; 20.04.2015
comment
А как насчет dr.DBNull(p51)? - person Jarachanthan Ratnakumar; 20.04.2015
comment
Извините, попробуйте этот dr.IsDBNull(p51) и проверьте имя столбца. - person Jarachanthan Ratnakumar; 20.04.2015
comment
извините, моя ошибка, значения не нулевые, они имеют 0, если нет значения, как проверить, равны ли значения 0? - person Kevin Rodriguez; 20.04.2015
comment
попробуйте это, если (dr[p51] == 0) - person Jarachanthan Ratnakumar; 20.04.2015
comment
im get Оператор '==' не может применяться к операндам типа 'object' и 'int' - person Kevin Rodriguez; 20.04.2015
comment
if ((Integer) dr[p51] == 0) проверьте это или if ((int) dr[p51] == 0). - person Jarachanthan Ratnakumar; 20.04.2015
comment
я получаю неверный указанный бросок - person Kevin Rodriguez; 20.04.2015
comment
решено, спасибо, я использовал (string)dr[p55] == 0) - person Kevin Rodriguez; 20.04.2015
comment
не могу проголосовать, но извините. - person Kevin Rodriguez; 20.04.2015
comment
я проголосовал за ваш пост - person Kevin Rodriguez; 20.04.2015