使用LINQ查询语法查询null集合时会发生什么?

时间:2012-03-28 01:22:45

标签: c# linq collections null

我的理解是什么都不会发生。

例如这段代码:

foreach (var some in (from u in possiblyNullCollection ) ) 
{
    // 
}

应该加以保护:

if ( possiblyNullCollection != null ) 
{ 
    foreach (var some in (from u in possiblyNullCollection ) ) 
    {
     // 
    }
}

或者查询空集合是否安全?

1 个答案:

答案 0 :(得分:16)

如果使用LINQ查询,则null集合将引发异常。你需要检查null。

然而空集合很好。

要记住的一点是,通常认为集合为空的不良做法。与集合中的null项类似,它可能会导致很多错误。

LINQPad Window showing the results of the query