各位好.请教个问题

盼着到1 2014-06-12 12:52:56
var Track = from track in datatable.AsEnumerable()
where !track.IsNull("datetime2") || !track.IsNull("datetime1")
group track by new { t1 = track.Field<string>("number") } into TraInfo
select new
{
TraKDDH = TraInfo.First().Field<string>("number"),

MaxExtimsteTime = TraInfo.Max(n => n.Field<DateTime>("datetime1")),

MaxActual = TraInfo.Max(n => n.Field<DateTime>("datetime2"))
};

datatable中,datetime1,datetime2可能为空,然后LINQ就会报 不能将空转换为时间的错,求教各位如何解决
...全文
68 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bdmh 2014-06-12
  • 打赏
  • 举报
回复
判断字段为空值用 DBNull.Value
盼着到1 2014-06-12
  • 打赏
  • 举报
回复
引用 1 楼 bdmh 的回复:
判断字段为空值用 DBNull.Value
var Track = from track in dt28.AsEnumerable() where track.Field<Object>("YJDGSJ") != DBNull.Value || track.Field<Object>("SJDGSJ") != DBNull.Value group track by new { t1 = track.Field<string>("KDDH") } into TraInfo select new { TraKDDH = TraInfo.First().Field<string>("KDDH"), //最大预计到港时间 MaxExtimsteTime = TraInfo.Max(n => n.Field<DateTime>("YJDGSJ")), //最大实际到港时间 MaxActual = TraInfo.Max(n => n.Field<DateTime>("SJDGSJ")) };改过了,还是会报错,是不是我select new 里写的有问题
盼着到1 2014-06-12
  • 打赏
  • 举报
回复
引用 楼主 u012480478 的回复:
var Track = from track in datatable.AsEnumerable() where !track.IsNull("datetime2") || !track.IsNull("datetime1") group track by new { t1 = track.Field<string>("number") } into TraInfo select new { TraKDDH = TraInfo.First().Field<string>("number"), MaxExtimsteTime = TraInfo.Max(n => n.Field<DateTime>("datetime1")), MaxActual = TraInfo.Max(n => n.Field<DateTime>("datetime2")) }; datatable中,datetime1,datetime2可能为空,然后LINQ就会报 不能将空转换为时间的错,求教各位如何解决
改过了,还是会报错.. var Track = from track in dt28.AsEnumerable() where track.Field<Object>("YJDGSJ") != DBNull.Value || track.Field<Object>("SJDGSJ") != DBNull.Value group track by new { t1 = track.Field<string>("KDDH") } into TraInfo select new { TraKDDH = TraInfo.First().Field<string>("KDDH"), //最大预计到港时间 MaxExtimsteTime = TraInfo.Max(n => n.Field<DateTime>("YJDGSJ")), //最大实际到港时间 MaxActual = TraInfo.Max(n => n.Field<DateTime>("SJDGSJ")) };

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧