从数据库获取值时,DBNULL.Value始终返回True
本文关键字:Value 返回 True DBNULL 数据库 获取 | 更新日期: 2023-09-27 18:21:35
我试图避免使用0的数据库null值,如果它不为null,则获取原始值。
但我有一些问题。
这是我的样本代码:
int Value = 0;
for(int i = 0; i < tblValue.Rows.Count; i++)
{
if (tblValue.Rows[i][""]== DBNull.Value)//Here it always returns true.. even there are values at Position 1 and
{
Value += 0;
}
else
{
Value += Convert.ToInt32(tblValue.Rows[i][""]);
}
}
有什么想法吗?
我检查DBNUll Value的方式是否错误?
是。Try(DBNull.Value.Equals(tblValue.Rows[i]["]);
http://msdn.microsoft.com/en-us/library/system.dbnull.value.aspx
试试这个:
int Value = 0;
for(int i = 0; i < tblValue.Rows.Count; i++)
{
if (!IsDBNull(tblValue.Rows[i][""]))
{
Value += Convert.ToInt32(tblValue.Rows[i][""]);
}
}
如果数据库值为NOT NULL
,这只会增加Value
变量。