如何检查空值VAR?(How to check a var for null value?)

2019-09-17 12:57发布

我使用PetaPoco微ORM用C#4.0。

下面的代码从数据库中获取单行:

var result = db.SingleOrDefault<TdUsers>(getUserQuery);

我想检查的结果是否包含任何行,以及是否为空。 做这个的最好方式是什么?

Answer 1:

if (result == null || result.Count() == 0) {
    // Checks whether the entire result is null OR
    // contains no resulting records.
}

我觉得这个问题是不是在你的支票null ,因为LINQ是懒加载。 你的错误是在使用表达式db.SingleOrDefault<TdUsers>(getUserQuery);

.Single<T>(expression)如果结果没有返回值其错误-没有返回null。 .SingleOrDefault<T>(expression) ,但是,返回一个空值,如果在任何值的表达结果- ,因此是最好用一个组合if (result == null)类型检查,因为您使用在这里。



Answer 2:

var result = db.SingleOrDefault<TdUsers>(getUserQuery);

在上面的代码中的SingleOrDefault返回null淡水河谷或指定的泛型类型(它在运行时知道)。

序检查返回值是否为空或不是,你可以简单地使用

if(result!=null)
{
//do your code stuff 
}
else
{
//stuff do be done in case where result==null
}


Answer 3:

你可以这样做:

result.ToList() // Convert result to a list

if (result.Any()) {
   // result is not null
}


Answer 4:

 var v = result.ToList();

现在检查

if (v.Count > 0)


文章来源: How to check a var for null value?