C# 尝试检查我的MVC模型';在我的数据库中,s值等于NULL
这是代码(请忽略我的C# 尝试检查我的MVC模型';在我的数据库中,s值等于NULL,c#,sql,asp.net-mvc,json,C#,Sql,Asp.net Mvc,Json,这是代码(请忽略我的中的标记,这只是为了测试: 现在,我的SQL Server数据库中有EarlyDod的NULL: 比较item.EarlyDod和DBNull.Value时出现的错误是: 我理解这个错误,这是有道理的,但是当我的数据库中有一个NULL值(我可以想象它是DBNull.valueno?)时,我如何比较我的C#object的valueitem.EarlyDod来检查它在数据库中是否为NULL?通过我的WebAPI从数据库返回的值(JSON格式)因为EarlyDod是“0001
中的
标记,这只是为了测试:
现在,我的SQL Server数据库中有EarlyDod
的NULL
:
比较item.EarlyDod
和DBNull.Value
时出现的错误是:
我理解这个错误,这是有道理的,但是当我的数据库中有一个
NULL
值(我可以想象它是DBNull.value
no?)时,我如何比较我的C#object的valueitem.EarlyDod
来检查它在数据库中是否为NULL?通过我的WebAPI从数据库返回的值(JSON格式)因为EarlyDod
是“0001-01-01T00:00:00”,不是某种类型的空值,即使它在数据库中是空的。DateTime
不可为空。因此,当您拖动它时,它会实例化DateTime的默认值(DateTime.MinValue
)
因此,您可以将item.EarlyDod
转换为DateTime?
,并使用
item.EarlyDod != null
或者将其保留为日期时间并简单地替换
item.EarlyDod != DBNull.Value
与
DateTime
不可为空。因此,当您提取它时,它将实例化DateTime的默认值(DateTime.MinValue
)
因此,您可以将item.EarlyDod
转换为DateTime?
,并使用
item.EarlyDod != null
或者将其保留为日期时间并简单地替换
item.EarlyDod != DBNull.Value
与
您从数据库中从何处提取?
item.EarlyDod
似乎无论如何都不是一个可为null的datetime。看起来item是一个实体,如果是这样,您应该将属性与null进行比较。但是错误似乎表明属性类型是datetime,这可能表明您的映射设置为datetime而不是NullableWhe是否重新从数据库中提取?item。EarlyDod
似乎无论如何都不是可为null的datetime。看起来item是一个实体,如果是,则应将属性与null进行比较。但是,错误似乎表明属性类型为datetime,这可能表明您的映射设置为datetime而不是可为null。谢谢,我会试试的。谢谢。汉克斯,我会试试的。谢谢