private Expression CreateItemsExpressionFromChildBuilder() { var groupItemsFilterExpression = CreateChildItemsFilterExpression(); Expression groupItems = this.Queryable.Where(groupItemsFilterExpression); childBuilder.Queryable = groupItems; return(childBuilder.CreateExpression()); }
public Expression CreateExpression() { GroupDescriptorExpressionBuilderEx childBuilder = null; foreach (GroupDescriptor groupDescriptor in groupDescriptors.Reverse()) { var builder = new GroupDescriptorExpressionBuilderEx(this.queryable, groupDescriptor, childBuilder, notPagedData); //builder.Options.LiftMemberAccessToNull = queryable.Provider.IsLinqToObjectsProvider(); builder.Options.LiftMemberAccessToNull = false; childBuilder = builder; } if (childBuilder != null) { return(childBuilder.CreateExpression()); } return(queryable); }