有人可以告诉我正确使用 DBNull 吗?我正在开发一个 MVC3 项目,它在控制器中有这个查询。
我有一个 linq 查询,它返回一个我知道在第一个周期没有值的字段:
var qryGetBirthdate = (from c in db.Customer
select new
{
c.Birthdate
}
).FirstOrDefault();
在数据库中,Birthdate 是一个为空的 Datetime 类型。
我为此做的检查是错误的:
if ( !DBNull.Value.Equals(qryGetBirthdate.Birthdate))
{
DateTime? dob = qryGetBirthdate.Birthdate;
}
我尝试了其他博客的变体,但找不到答案。基本上我想要的是抓住'qryGetBirthdate.Birthdate'还不存在的事实。我得到的只是对象未设置为我知道的引用的异常。
我究竟做错了什么?