比较C#中可能为空的字符串

时间:2010-09-20 20:16:01

标签: c# .net sql linq

我正在尝试使用以下方法比较数据库上LINQ查询的字符串字段:

e.Comment.equals("Working From Home")

在WHERE子句上。

但是,有时“注释”字段可能为空,这当前会导致Object reference not set to an instance of an object异常。

有什么方法可以检查注释是否为空,然后比较以避免异常?

4 个答案:

答案 0 :(得分:4)

您可以使用==代替Equals:

e.Comment == "Working From Home"

LINQ to SQL会正确地将其转换为适当的SQL语法。

答案 1 :(得分:1)

在这种情况下,使用'=='运算符应该足够了:

e.Comment == "Working From Home"

答案 2 :(得分:0)

!String.IsNullOrEmpty(e.Comment) && e.Comment == "Working From Home"

答案 3 :(得分:0)

您可以"Working From Home".Equals(e.Comment);String.Equals(e.Comment, "Working From Home");