Я знаю, что уже много сообщений об этом, но я не нашел ничего, что помогло бы мне понять или исправить мою проблему. У меня есть база данных, заполняющая данные. Я сейчас пытаюсь добавить новый столбец и установить значение строки столбца равным 1 или 0 в зависимости от небольшой формулы ниже:
dt.Columns.Add("pViolation");
foreach (DataRow row in dt.Rows)
{
/*exception thrown here*/ if (Convert.ToDecimal(row["oPrice"]) < Convert.ToDecimal(row["pPrice"]))
{
row["pViolation"] = 1;
}
else
{
row["pViolation"] = 0;
}
}
Я получаю эту ошибку:
System.InvalidCastException: «Объект не может быть приведен из DBNull к другим типам.»
Столбцы oPrice
и pPrice
уже заполнили десятичные значения для каждого столбца, поэтому я не приведение их от нуля до десятичного числа. Может кто-нибудь сказать мне, что я делаю не так?