我有这样的表情:
Expression<Func<int, bool>> exp = i => i<15 && i>10;
我想添加一个条件exp
在此行之后。我怎样才能做到这一点?
简单地说:
Expression<Func<int, bool>> exp = i => i < 15 && i > 10;
var compiled = exp.Compile();
exp = i => compiled(i) && i % 2 == 0; //example additional condition
请注意,您不能这样做:
exp = i => exp.Compile()(i) && i % 2 == 0; //example additional condition
罢工>
because exp
将通过引用添加到闭包中,因此,调用它会导致StackOverflowException
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)