当前位置:编程学习 > C#/ASP.NET >>

处理时间的,前辈请赐教.

数据库里的时间类型存里了个空值,在数据访问层用sqlDataReader对象读取封装到实体类的时候,实体类中定义也是时间类型,但时间类型又不能为空值!封装不了!怎么解决?还请前辈赐教。 --------------------编程问答-------------------- 如果为空设置一个默认值 --------------------编程问答-------------------- 1. sql语句中对有可能出现空的字段用IsNull处理一下
2.  在代码中作非空判断:
  if(reader["time"]==DbType.Null)
  付一默认值 --------------------编程问答-------------------- 语句取值时用 isnull(col,getdate()),可以把getdate()替换成你认为适合的时间值 --------------------编程问答--------------------
引用 2 楼  的回复:
1. sql语句中对有可能出现空的字段用IsNull处理一下
2. 在代码中作非空判断:
  if(reader["time"]==DbType.Null)
  付一默认值


如能使用可空类型使用 不能使用则DbType.Null --------------------编程问答-------------------- 给它弄个默认值吧,就是当前时间GETDATE() --------------------编程问答--------------------
引用 2 楼  的回复:
1. sql语句中对有可能出现空的字段用IsNull处理一下
2. 在代码中作非空判断:
  if(reader["time"]==DbType.Null)
  付一默认值


这两种方法都可以,看你怎么选了 --------------------编程问答-------------------- 时间类型可以为空啊

你定义的时候使用

public DateTime? pDate{get;set;} --------------------编程问答--------------------
引用 7 楼  的回复:
时间类型可以为空啊

你定义的时候使用

public DateTime? pDate{get;set;}

这个可以 --------------------编程问答-------------------- 问题顺利解决,给力! --------------------编程问答--------------------
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,