我在存储库中有一个方法:
Query<T>(System.Linq.Expressions.Expression<Func<T,bool>> function)
当我调用它时,我想根据条件使用不同的表达式。
我试过:
m_Repository.Query<MyObject>(x => x.Infos.Count > 1 ?
x.Infos.Any(y => y.Info.Name.StartsWith(s)) :
x.Name.StartsWith(s));
但随后它总是执行 else 部分。我想我必须使用 Expression.IfThenElse,但我无法让它工作。有关如何执行此操作的任何建议?
谢谢!
最佳答案
你试过Expression.Condition
关于c# - 如何在 C# 中使用 Expression.IfThenElse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6730127/