Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在列表的所有元素上计算表达式 public List listStr=new listStr(); 公共列表查找字符串(表达式谓词) { //返回满足谓词的列表 }_C#_Expression_Interaction - Fatal编程技术网

C# 在列表的所有元素上计算表达式 public List listStr=new listStr(); 公共列表查找字符串(表达式谓词) { //返回满足谓词的列表 }

C# 在列表的所有元素上计算表达式 public List listStr=new listStr(); 公共列表查找字符串(表达式谓词) { //返回满足谓词的列表 },c#,expression,interaction,C#,Expression,Interaction,我想举个例子来理解如何在c#中使用表达式。你能帮我完成这段代码吗?类似的东西 public List<String> listStr = new listStr(); public List<String> FindString(Expression<Func<String, bool>> predicate) { // return a list that satisfies the predicate } 像这样的 public List&

我想举个例子来理解如何在c#中使用表达式。你能帮我完成这段代码吗?

类似的东西

public List<String> listStr = new listStr();

public List<String> FindString(Expression<Func<String, bool>> predicate)
{
// return a list that satisfies the predicate
}
像这样的

public List<String> listStr = new listStr();

public List<String> FindString(Expression<Func<String, bool>> predicate)
{
// return a list that satisfies the predicate
}
公共列表查找字符串(表达式谓词)
{
返回listStr.Where(predicate.Compile()).ToList();
}
公共列表查找字符串(表达式谓词)
{
返回listStr.Where(predicate.Compile()).ToList();
}
公共列表listStr=新列表();
公共列表查找字符串(表达式谓词)
{
//返回满足谓词的列表
Func p=predicate.Compile();
返回listStr.Where(p.ToList();
}
注意:您的变量声明错误。

public List listStr=new List();
公共列表查找字符串(表达式谓词)
{
//返回满足谓词的列表
Func p=predicate.Compile();
返回listStr.Where(p.ToList();
}

注意:您的变量声明是错误的。

底部有一个示例:
var result=Expression.Lambda(blockExpr.Compile()的底部有一个示例:
var result=Expression.Lambda(blockExpr.Compile()你需要编译一个表达式才能像发帖一样使用它。你需要编译一个表达式才能像发帖一样使用它
public List<String> FindString(List<String> list, Expression<Func<String, bool>> predicate)
{
    var lambda = predicate.Compile();
    return list.Where(lambda).ToList();
}
public List<String> FindString(Expression<Func<String, bool>> predicate)
{
  return listStr.Where(predicate.Compile()).ToList();
}
public List<String> listStr = new List<String>();

public List<String> FindString(Expression<Func<String, bool>> predicate)
{
    // return a list that satisfies the predicate
    Func<string, bool> p = predicate.Compile();
    return listStr.Where(p).ToList();
}