我有这样的方法:如何传递System.Linq.LambdaExpression?
public List<MyObjects> All<TEntity>(params LambdaExpression[] exprs)
与我可以调用它像这样的意图:
All<SomeObject>(a => a.Collection1, a=> a.Collection2, a=>a.Collection3);
然而,我的方法的签名似乎不采取正确的表达。我究竟做错了什么?我如何编写方法签名以获得期望的效果?
编辑:我意识到,我的例子方法调用并没有准确地反映我试图在现实生活中:)
感谢做!
什么是All()方法应该做的?是否假设检查集合中的项目是否满足一组谓词(类似于LINQ ['All()'](http://msdn.microsoft.com/en-us/library/bb548541.aspx)方法) ?或者它将一组集合展平成一个集合(类似于LINQ ['SelectMany()'](http://msdn.microsoft.com/en-us/library/system.linq.enumerable.selectmany.aspx)方法)?这听起来像你应该在这里使用'SelectMany()',如果我没有弄错的话。 – 2012-02-21 20:43:01