C# 如何在linq中对`item.GetType().GetProperty(getPropertyStringParameter)`进行null检查

C# 如何在linq中对`item.GetType().GetProperty(getPropertyStringParameter)`进行null检查,c#,linq,C#,Linq,如何检查空值,例如 if(item.GetType().GetProperty(getPropertyStringParameter)!=null)用于C#中的以下linq查询 查看空条件运算符:查看空条件运算符: matchingConfigItem = (from item in contextEnum where item.GetType().GetProperty(getPropertyStringParameter).GetVa

如何检查空值,例如

if(item.GetType().GetProperty(getPropertyStringParameter)!=null)
用于C#中的以下linq查询


查看空条件运算符:查看空条件运算符:
 matchingConfigItem = (from item in contextEnum
                            where item.GetType().GetProperty(getPropertyStringParameter).GetValue(item)
                                .Equals(configItem.GetType().GetProperty(getPropertyStringParameter)
                                    ?.GetValue(configItem))
                            select item).SingleOrDefault();
matchingConfigItem = (
   from item in contextEnum
   let itemProp = item.GetType().GetProperty(getPropertyStringParameter)
   let configProp = configItem.GetType().GetProperty(getPropertyStringParameter)
   where itemProp != null && configProp != null && itemProp.GetValue(item)
   .Equals(configProp.GetValue(configItem))
   select item
)
.SingleOrDefault();