Я написал относительно большой оператор вставки, и некоторые поля имеют значение null.
Я не могу преобразовать db null в другие типы, и я действительно не хочу проверять Convert.IsDBNull для каждогоitem
Что мне делать?
System.Data.OleDb.OleDbCommand iCommand = new System.Data.OleDb.OleDbCommand("Insert into ProductCode values('" +
greader["CODE"].ToString() +
"','" + Convert.ToChar(greader["DISC_CODE01"]) +
"','" + Convert.ToChar(greader["DISC_CODE02"]) +
"','" + Convert.ToChar(greader["DISC_CODE03"]) +
"','" + Convert.ToChar(greader["DISC_CODE04"]) +
"','" + Convert.ToChar(greader["DISC_CODE05"]) +
"','" + Convert.ToChar(greader["DISC_CODE06"]) +
"','" + Convert.ToChar(greader["DISC_CODE07"]) +
"','" + Convert.ToChar(greader["DISC_CODE08"]) +
"','" + Convert.ToChar(greader["DISC_CODE09"]) +
"','" + Convert.ToChar(greader["DISC_CODE10"]) +
"','" + Convert.ToChar(greader["DISC_CODE11"]) +
"','" + Convert.ToChar(greader["DISC_CODE12"]) +
"','" + Convert.ToChar(greader["DISC_CODE13"]) +
"','" + Convert.ToChar(greader["DISC_CODE14"]) +
"','" + Convert.ToChar(greader["DISC_CODE15"]) +
"','" + Convert.ToChar(greader["DISC_CODE16"]) +
"','" + Convert.ToChar(greader["DISC_CODE17"]) +
"','" + Convert.ToChar(greader["DISC_CODE18"]) +
"','" + Convert.ToChar(greader["DISC_CODE19"]) +
"','" + Convert.ToChar(greader["DISC_CODE20"]) +
"','" + Convert.ToChar(greader["DISC_CODE21"]) +
"','" + Convert.ToChar(greader["DISC_CODE22"]) +
"','" + Convert.ToChar(greader["DISC_CODE23"]) +
"','" + Convert.ToChar(greader["DISC_CODE24"]) +
"','" + Convert.ToChar(greader["DISC_CODE25"]) +
"','" + Convert.ToChar(greader["DISC_CODE26"]) +
"','" + Convert.ToDouble(greader["DISC_PCT01"]) +
"','" + Convert.ToDouble(greader["DISC_PCT02"]) +
"','" + Convert.ToDouble(greader["DISC_PCT03"]) +
"','" + Convert.ToDouble(greader["DISC_PCT04"]) +
"','" + Convert.ToDouble(greader["DISC_PCT05"]) +
"','" + Convert.ToDouble(greader["DISC_PCT06"]) +
"','" + Convert.ToDouble(greader["DISC_PCT07"]) +
"','" + Convert.ToDouble(greader["DISC_PCT08"]) +
"','" + Convert.ToDouble(greader["DISC_PCT09"]) +
"','" + Convert.ToDouble(greader["DISC_PCT10"]) +
"','" + Convert.ToDouble(greader["DISC_PCT11"]) +
"','" + Convert.ToDouble(greader["DISC_PCT12"]) +
"','" + Convert.ToDouble(greader["DISC_PCT13"]) +
"','" + Convert.ToDouble(greader["DISC_PCT14"]) +
"','" + Convert.ToDouble(greader["DISC_PCT15"]) +
"','" + Convert.ToDouble(greader["DISC_PCT16"]) +
"','" + Convert.ToDouble(greader["DISC_PCT17"]) +
"','" + Convert.ToDouble(greader["DISC_PCT18"]) +
"','" + Convert.ToDouble(greader["DISC_PCT19"]) +
"','" + Convert.ToDouble(greader["DISC_PCT20"]) +
"','" + Convert.ToDouble(greader["DISC_PCT21"]) +
"','" + Convert.ToDouble(greader["DISC_PCT22"]) +
"','" + Convert.ToDouble(greader["DISC_PCT23"]) +
"','" + Convert.ToDouble(greader["DISC_PCT24"]) +
"','" + Convert.ToDouble(greader["DISC_PCT25"]) +
"','" + Convert.ToDouble(greader["DISC_PCT26"]) +
"')", iConnect);