c# 检查 IEnumerable 是否为 null

c# check IEnumerable for null

我正在尝试检查 IEnuemrable<SystemUser> 的类型是否为空。

我正在使用这段代码

            var systemUsers = newActActivityPersons.SelectMany(x => x.Person.SystemUsers);
            if (systemUsers == null || !systemUsers.Any()) return ;

那是行不通的。当我尝试执行 systemUsers.ToArray()systemUsers.ToList() 之类的操作时,我得到一个空异常。我如何检查此错误?

后续 x.Person.SystemUsers 之一可能为空。 .Any() returns 如果有则为真。如果您随后尝试 ToList(),您可能会发现 xPerson 为空。

在访问对象上的 属性 之前检查以确保 x.Person 不为空。