我有这个短代码,用于将数据读入maskedtextbox然后(这不是此代码的一部分)通过SqlCommand
更新它们
SqlCommand novyprikaz = new SqlCommand("SELECT * FROM zajezd WHERE akce=" + tentoradek, spojeni);
spojeni.Open();
SqlDataReader precti = novyprikaz.ExecuteReader();
if (precti.Read())
{maskedTextBox2.Text = precti.GetDateTime(24).ToShortDateString(); // i need to improve this part
}
但是知道maskedTextBox2
值是否为NULL,它会给我一个错误:
数据是空的。无法在Null值上调用此方法或属性。
我想问你,我应该用这段代码改变什么来使它读取Null? 提前谢谢。
以下是我过去为INSERT INTO
执行的代码片段。它标记为答案。
答案 0 :(得分:1)
使用第24列上的IsDBNull method检查SqlDataReader是否包含DBNull值,并正确地返回空字符串或非空值
if (precti.Read())
{
maskedTextBox2.Text = precti.IsDBNull(24) ?
string.Empty :
precti.GetDateTime(24).ToShortDateString();
}