怎么判断日期类型是否为空啊?
如何判断从数据库中查出来的日期格式的值是否为空啊?if(times==null)
{
...
}
这样写貌似不行啊,求解答! --------------------编程问答-------------------- times 是什么类型 ?没看懂 --------------------编程问答-------------------- 从数据库中查出该字段用object类型接
再判断object==null --------------------编程问答--------------------
if(times==DBNull.Value)
{
...
}
试试看
--------------------编程问答-------------------- if(times==null||times=="")
{
试下
} --------------------编程问答-------------------- DateTime是 值类型,没有空值,可以设置为可空类型。如下
DateTime? dt = null; --------------------编程问答-------------------- 可以说详细点吗?
最好是上代码
谢谢 --------------------编程问答-------------------- times<DateTime.MinValue --------------------编程问答-------------------- times==null||times=="" --------------------编程问答-------------------- times=="" --------------------编程问答-------------------- 或者:
赋值时,判断,若是空值则赋给DBNull.Value。
取值时,判断,若取到DBNull.Value则显示null
这样就能用
if(times==null)
{
...
}
了 --------------------编程问答-------------------- 如果你的数据库中默认插入DateTime.MinValue话就用times==DateTime.MinValue判断 --------------------编程问答--------------------
正解。 --------------------编程问答-------------------- DateTime是值类型,不可能为null
DateTime? time = reader.GetValue(16) == DBNull.Value ? null : new DateTime?(reader.GetDateTime(16)); --------------------编程问答-------------------- p.BuyTime = dr["Time"] == DBNull.Value ? DateTime.Now :Convert.ToDateTime(sdr["BuyTime"]);或?可空类型null
--------------------编程问答-------------------- p.BuyTime = dr["Time"] == DBNull.Value ? DateTime.Now :Convert.ToDateTime(sdr["Time"]);或?可空类型null
--------------------编程问答-------------------- --------------------编程问答-------------------- 3楼的就可以了,此时times会被装箱为object与DBNull.Value比较
或者麻烦点
DateTime time;
if(DateTime.TryParse(times, out time))
//合法
else
//非法 --------------------编程问答-------------------- if(Convert.IsDBNull(times))
{
//为空
} --------------------编程问答-------------------- times.GetType()==typeof(DBNull) --------------------编程问答-------------------- 如果你取出来的是string 类型就随便判断 times!="" || !string.IsNullOrEmpty(times)
如果你取出来的是datetime类型的并且可为空的话 类似于声音的时候这样 private datetime? times
则你可以判断 times!=null || times.Value
如果你取出来的是object 类型的则判断 times!=null 就可以 --------------------编程问答-------------------- 如果是数据库本身 time这个值没有
建议可以试试 time.hasValue 这个办法 --------------------编程问答-------------------- if(times==null||times=="")
{
} --------------------编程问答--------------------
--------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 日期是struct,不可能为空
if(times!=null)
{
}
DateTime?这样才可以 --------------------编程问答-------------------- 在你比较之前,你这么去判断 if (Object == DBNull.Value) 而不是直接用 if (Object == null) --------------------编程问答--------------------
那么多高手都给你说了,我就顶下! --------------------编程问答-------------------- 使用可空类型...... --------------------编程问答-------------------- DBNull.value是查询数据库中的数据也能判断日期是否为空吗 这个我不太懂 求高手指点一下 --------------------编程问答--------------------
DateTime? 刚刚才了解这种写法,LZ可以看看
http://www.2cto.com/kf/201012/79892.html
补充:.NET技术 , ASP.NET