c# - 从数据库获取值时 DBNULL.Value 始终返回 True

标签 c# asp.net sql dbnull

我试图避免数据库为 0 的空值,如果它不为空,则获取原始值。

但我遇到了一些问题。

这是我的示例代码:

    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 的方式是否错误?

最佳答案

是的。尝试 (DBNull.Value.Equals(tblValue.Rows[i][""]);

http://msdn.microsoft.com/en-us/library/system.dbnull.value.aspx

关于c# - 从数据库获取值时 DBNULL.Value 始终返回 True,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17548338/

相关文章:

sql - 范围联接,无重复项

sql - 是否可以动态检查该列是否存在于另一个数据库的表中

sql - SQL Server默认创建非聚集索引

c# - Azure 存储相关的 API 是否参与 System.Transactions?

javascript - XMLHttpRequest open() 在 Chrome 中失败

c# - C# 中的类型转换,显式转换为 int 和 Convert.ToInt32

c# - 在 asp.net 中克服发送电子邮件延迟的方法

c# - 如何获取新添加的记录

c# - 一次性将 ReadOnlySpan 复制到 Span

c# - 匿名类的 ASP.NET MVC ViewBag 列表在 Count() 方法上抛出错误