当传递NULL值时,输入字符串的格式不正确



我的web应用程序中有以下代码行。

foreach (DataRow dr in dtDataItemsSets_1.Rows)
{
lst_dataItem_1.Add(Convert.ToDecimal(dr["total"].ToString())); ;
}
iData.Add(lst_dataItem_1);

如果我给它递一个小数,它就很好用。

但是,如果该值为NULL,则会出现以下错误。

"输入字符串的格式不正确";

我理解为什么这不起作用,但我不确定如何处理NULL值?

非常感谢您的帮助。

在将dr的值转换为十进制之前,您可以检查它的值:

foreach (DataRow dr in dtDataItemsSets_1.Rows)
{
lst_dataItem_1.Add((dr["total"] is null) ? "NULL" : Convert.ToDecimal(dr["total"].ToString())); ;
}
iData.Add(lst_dataItem_1);

最新更新