.net 数据集中的LINQ空日期比较
我有一个.net 数据集中的LINQ空日期比较,.net,vb.net,linq,.net,Vb.net,Linq,我有一个数据集,其中我需要过滤其中一个日期列不为空的集合 你用LINQ怎么称呼这个 这就是我目前所知道的,但是在Where子句中的w.CompletedDate字段上有一个编译器错误 Dim completed = From ins In InspectionDataset.Inspection.AsEnumerable _ Where (Function(w) w.CompletedDate IsNot Nothing) _ Order By ins.Field(Of Date
数据集
,其中我需要过滤其中一个日期列不为空的集合
你用LINQ怎么称呼这个
这就是我目前所知道的,但是在Where
子句中的w.CompletedDate
字段上有一个编译器错误
Dim completed = From ins In InspectionDataset.Inspection.AsEnumerable _
Where (Function(w) w.CompletedDate IsNot Nothing) _
Order By ins.Field(Of DateTime)("UpdatedDate")
我也尝试了下面的方法,但是编译器不允许进行DBNull
比较
Dim completed = From ins In Inspection.AsEnumerable _
Where ins.Field(Of DateTime)("CompletedDate") <> DBNull.Value _
Order By ins.Field(Of DateTime)("UpdatedDate")
Dim completed=检查中的ins。可计算_
其中ins.字段(日期时间)(“CompletedDate”)DBNull.Value_
按ins.字段排序(日期时间)(“更新日期”)
上的不会返回数据库中的空值(这是使用ADO.NET时所期望的),而是检查该值,如果该值为空,则不返回任何内容
也就是说,您的查询应该是:
Dim completed = From ins In Inspection.AsEnumerable _
Where Not (ins.Field(Of Nullable(Of DateTime))("CompletedDate") Is Nothing) _
Order By ins.Field(Of DateTime)("UpdatedDate")