为了账号安全,请及时绑定邮箱和手机立即绑定

包含不工作的 Lambda 表达式

包含不工作的 Lambda 表达式

C#
明月笑刀无情 2021-06-10 18:24:29
我是 Lambda 表达式的新手,在获取我想要的输出时遇到了一些问题。更具体地说,我无法让 LINQ 包含正确的 Lambda 表达式的一部分。这是我到目前为止所拥有的:// The following line is what I want for my Final Resultvar distinctValues = db.Equipment.Where(m => m.Model != null && m.Model.Contains(SearchTerm)).Select(m => m.Model).Distinct().ToList();var queryableData = db.Equipment.AsQueryable();var parameterExpression = Expression.Parameter(typeof(Equipment), Column);var constant = Expression.Constant(null);var property = Expression.Property(parameterExpression, Column);var expression1 = Expression.NotEqual(property, constant);var expression2 = Expression.Equal(property,constant);Expression callContains = Expression.Call(typeof(Queryable), "Contains", new[] { <string> } );var lambda1 = Expression.Lambda<Func<Equipment, bool>>(expression1, parameterExpression);var lambda2 = Expression.Lambda<Func<Equipment, string>>(property, parameterExpression);var lambda3 = Expression.Lambda<Func<Equipment, bool>>(callContains, parameterExpression);var compiledLambda1 = lambda1.Compile();var compiledLambda2 = lambda2.Compile();我正在传递任何属性和一个搜索词,我想生成与上面的 LINQ 查询等效的以“var distinctValues”开头的 Lambda 表达式。我遇到了以“Expression callContains”开头的行的问题。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 108 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信