private TResult BindMemberOrMethod <TResult>( Func <IProperty, IQuerySource, SelectExpression, TResult> memberBinder, IQuerySource querySource, IProperty property) { if (querySource != null) { var selectExpression = TryGetQuery(querySource); if (selectExpression != null) { return(memberBinder(property, querySource, selectExpression)); } selectExpression = _parentQueryModelVisitor?.TryGetQuery(querySource); selectExpression? .AddToProjection( QueryCompilationContext.GetColumnName(property), property, querySource); } return(default(TResult)); }
private TResult BindMemberOrMethod <TResult>( Func <IProperty, IQuerySource, SelectExpression, TResult> memberBinder, IQuerySource querySource, IProperty property) { var selectExpression = TryGetQuery(querySource); if (selectExpression != null) { return(memberBinder(property, querySource, selectExpression)); } selectExpression = _parentQueryModelVisitor != null ? _parentQueryModelVisitor.TryGetQuery(querySource) : null; if (selectExpression != null) { selectExpression.AddToProjection(property, querySource); } return(default(TResult)); }