信息路径 2007 重复表空值
本文关键字:空值 路径 2007 信息 | 更新日期: 2023-09-27 18:36:41
我收到此错误:无法读取数据。 数据为空。不能对 Null 值调用此方法或属性。
我知道数据库在某些字段中具有 NULL 值。 我只想处理它们并继续填写下一行。 下面是一些代码:
rdr 是 SqlDataReader
if (rdr[EmailID] != null)
{
//this blows up on this line on the 32nd iteration of the loop when searching for an extended group.
EmpNewData.SelectSingleNode("/my:myFields/my:Emp/my:EmpData/my:email", NamespaceManager).SetValue(rdr.GetString(EmailID));
}
else
{
EmpNewData.SelectSingleNode("/my:myFields/my:Emp/my:EmpData/my:email", NamespaceManager).SetValue("No.Email");
}
我可以使用存储过程处理此问题,但我真的很想知道如何处理此问题。 以上是我尝试过的众多迭代之一。谢谢。
我想
通了。 IsDBNull似乎照顾好了它。 我在调试中运行了代码以检查序号的位置。在这种情况下是 14 岁。
int EmailID = rdr.GetOrdinal("EmailID");
Then when using GetString:
if (!(rdr.IsDBNull(14)))
{
EmpNewData.SelectSingleNode("/my:myFields/my:Emp/my:EmpData/my:email", NamespaceManager).SetValue(rdr.GetString(EmailID));
}
else
{
EmpNewData.SelectSingleNode("/my:myFields/my:Emp/my:EmpData/my:email", NamespaceManager).SetValue("No Email");
}
我希望这会对某人有所帮助。