Crystal报表不支持null Datetime

时间:2013-06-02 12:45:35

标签: c# datetime crystal-reports dbnull

我正在使用ado.Net的水晶报告,当datetime从数据库变为空时显示错误。如果我们使用Nullable(使用?)属性,则晶体报告不能支持。

如: -

 _report = (
       from user in users  
               select new userModel()
               {
                   UserId = user.Field<string>("userid"),
                   CheckInTime = <user.Field<DateTime>("intime"),
                   CheckOutTime = user.Field<DateTime>("outime"),
                   TotalWorks = user.Field<Int32>("TotalWork")
               })
               .ToList();

在这里抛出错误......

当我们使用Nullabe时......: -

    public DateTime? CheckInTime { get; set; }
    public DateTime? CheckOutTime { get; set; }

               CheckInTime = <user.Field<DateTime?>("intime"),
               CheckOutTime = user.Field<DateTime?>("outime"),

然后Crystal报告不支持。

有任何最佳解决方案吗?

1 个答案:

答案 0 :(得分:1)

最简单的方法是将该日期变量转换为字符串(如果为空则使其为空),然后将其传递给crystal report,并将其用作crystal report中的字符串。