protected override Expression VisitHashParametersExpression(HashParametersExpression hpex) { return(Expression.Call( Expression.Constant(this), #if netstandard new Func <BindingContext, HashParametersExpression, object>(ResolveParameters).GetMethodInfo(), #else new Func <BindingContext, HashParametersExpression, object>(ResolveParameters).Method, #endif CompilationContext.BindingContext, Expression.Constant(hpex))); }
private object ResolveParameters(BindingContext context, HashParametersExpression hpex) { var parameters = new HashParameterDictionary(); foreach (var parameter in hpex.Parameters) { var path = parameter.Value as PathExpression; parameters.Add(parameter.Key, path != null ? ResolvePath(context, path.Path) : parameter.Value); } return(parameters); }
protected virtual Expression VisitHashParametersExpression(HashParametersExpression hpex) { return(hpex); }
protected virtual System.Linq.Expressions.Expression VisitHashParametersExpression(HashParametersExpression hpex) { return(hpex); }