我使用外部DLL作为参考。需要一个表达式作为参数传递给c#
当我尝试使用一个方法,它要求一个表达式作为参数来过滤结果。
及其期望的类型如下
Expression<Func<Template, bool>>
类型作为参数。
模板类型具有名称和组ID作为属性。
我想创建一个表达式来检查对象是否与组ID相同,以及名称是否包含在项目列表中,如下所示。
Expression<Func<Template, bool>> filterTemplatesDestination = tmplt =>
stselectedTemplates.Contains(tmplt.Name) &&
tmplt.TemplateGroupId == stDestGroupID;
但是,当我将这个表达式分配给方法我得到一个异常。如果我只使用组ID来过滤它工作正常。当我使用条件来检查名称是否存在于我的条件中时,该表达式将引发异常。
您能否提供能够正确工作的代码(正如您所提及的)并提供您正在使用当前示例获得的例外情况? – Prescott
唯一的例外,我觉得你可以从stdelectedTemplates的这个代码中得到一个nullReferenceExection。这是一个吗? –