如果我有一长串对象,每个对象都有可能在“Linq where”子句中返回 null,例如
SomeSource.Where(srcItem=>(srcItem.DataMembers["SomeText"].Connection.ConnectedTo as Type1).Handler.ForceInvocation == true));
索引器可以返回 null,而“as”运算符可以返回 null。对象可能没有连接(即属性为空)。如果在任何地方遇到空值,我希望 where 子句为正在评估的项目返回“false”。相反,它会因空引用异常而中止。
在我看来,这将被设计为在单个 C# 表达式中表达。我不喜欢创建多行语句或为其创建单独的函数。是否有一些我缺少的空合并运算符的用途?