C# 避免列约束空数据

C# 避免列约束空数据,c#,C#,我试图避免在从数据库获取日期时格式化空值 但我收到一条错误信息,上面写着 列约束空数据 我尝试在else部分使用GetString而不是GetValue,但这对我没有帮助 if (!Convert.IsDBNull(oraReder[4])) //NEXT_INTEREST_DATE { TBNextInterestDate.Text = Convert.ToDateTime(oraReder[4]).ToString("hh:mm:ss

我试图避免在从数据库获取日期时格式化空值 但我收到一条错误信息,上面写着

列约束空数据

我尝试在else部分使用GetString而不是GetValue,但这对我没有帮助

if (!Convert.IsDBNull(oraReder[4]))                         //NEXT_INTEREST_DATE
{
    TBNextInterestDate.Text = Convert.ToDateTime(oraReder[4]).ToString("hh:mm:ss dd/MM/yyyy");
}
else
{
    TBNextInterestDate.Text = oraReder.GetValue(4).ToString();
}

你要找的是

if (oraReder[4] != DBNull.Value)
{
    TBNextInterestDate.Text = Convert.ToDateTime(oraReder[4]).ToString("hh:mm:ss dd/MM/yyyy");
}

这很简单,您需要由读取器控制字段,而不是直接控制值

if(!oraReder.IsDBNull(4))//下一个利息日期
{
TBNextInterestDate.Text=Convert.ToDateTime(oraReder[4]).ToString(“hh:mm:ss dd/mm/yyyy”);
}
其他的
{
TBNextInterestDate.Text=oraReder.GetValue(4.ToString();

}
仍然获得相同的错误消息列会限制空数据