如何将两个Expression <func <type,bool =“” >>求和成一个?

时间:2018-11-19 15:12:36

标签: c# expression

我如何求和两个将bool返回2的表达式?

就像重构两个ifs

if (a)
{

}

if (b)
{

}

if (a && b)
{

}

我想通过表达式实现相同的目的

public class Test
{
    public int Age { get; set; }
    public string Name { get; set; }
}

public void test(Expression<Func<Test, bool>> exp1, Expression<Func<Test, bool>> exp2)
{
    var exp3 = exp1 + exp2; // pseudo code
    // My goal:
    // exp3 = x => x.Age > 5 && x.Name.Contains("Alex");
}

public static void Main(string[] args)
{
    test(x => x.Age > 5,
        x => x.Name.Contains("Alex");
}

此外,该怎么做:

  

var p = new Expression (x => x.Name ==“ abc”); //甚至不会编译

0 个答案:

没有答案
相关问题