【问题标题】:how do I check for underlying null value using linq to sql?如何使用 linq to sql 检查底层空值?
【发布时间】:2013-03-22 21:18:10
【问题描述】:

我知道,如果您使用空字段查询 linq-to-sql 记录(即 DB/对象中的行),那么 linq to SQL 将允许您访问空值而不会出现空引用异常,如下所示: Dim myValue as String = myRecord.Nullfield

但我想查询基础数据库中的字段为空的记录。

如何使用 LINQ 做到这一点?

(From l In myDB.myTable Where l.Program.Equals(DBNull.Value) Select l).Count //Unexpected type code: DBNull

我要查找的语法是什么?

【问题讨论】:

  • 我认为 LINQ 数据库适配器可以为您做到这一点:Where l.Program == null

标签: .net linq linq-to-sql


【解决方案1】:

使用 == null(或任何 VB.NET 等效项)。没有更多的DBNull。耶!

【讨论】:

  • 什么是 VB 等价物。这就是我要找的
  • 答案的关键是与null进行比较。找出 C# 语法是你的工作。你的能力很好,所以不要轻易放弃。
【解决方案2】:

请参阅 MSDN 上的 null semantics mismatching 文章。 一般来说,你可以使用任一

(From l In myDB.myTable Where l.Program.Equals(null) Select l).Count

(From l In myDB.myTable Where l.Program == null Select l).Count

【讨论】:

    猜你喜欢
    • 2013-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-01
    • 1970-01-01
    • 2020-12-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多