是否可以使用LINQ选择字段为空的所有记录?

时间:2012-01-25 22:25:18

标签: .net vb.net linq linq-to-sql

我有一个表来缓存某些日期的计算值。我想使用LINQ来选择计算值字段为空的所有行。

但是当我使用isNothing时,我得到一个LINQ无法将其转换为T-SQL的错误。有没有办法用链接选择空值,像这样......?

Dim var = From rec As Record In myDataContext.Records Where IsNothing(rec.calculatedValue) Select rec

stackoverflow上的其他帖子主要讨论如何使用LINQ避免或检查空值。

注意:我不能只将cacluatedValue的默认值设置为-1来标记尚未设置计算值的记录(然后选择那些记录),因为我运行了对计算值求和/平均值的查询值。选择空值似乎更清晰,更容易出错。

1 个答案:

答案 0 :(得分:1)

Dim var = (From rec As Record In myDataContext.Records _ 
    Where rec.calculatedValue is nothing _ 
    Select rec)