/// <summary>
        ///     Initializes a new instance of the <see cref="ExpressionNode" /> class.
        /// </summary>
        public LambdaExpressionNode([NotNull] IExpressionNode expression, [CanBeNull] IEnumerable <string> parameters)
            : base(ExpressionNodeType.Lambda)
        {
            Should.NotBeNull(expression, "expression");
            _expression = expression;
            _parameters = parameters == null
                ? Empty.Array <string>()
                : parameters.ToArray();

            BindingExtensions.CheckDuplicateLambdaParameter(Parameters);
        }
Пример #2
0
 private BindingMemberVisitor(BindingMemberVisitor innerVisitor, IEnumerable <string> lambdaParameters)
     : this()
 {
     _members     = innerVisitor._members;
     _staticNodes = innerVisitor._staticNodes;
     if (innerVisitor._lamdaParameters != null)
     {
         _lamdaParameters.AddRange(innerVisitor._lamdaParameters);
     }
     _lamdaParameters.AddRange(lambdaParameters);
     BindingExtensions.CheckDuplicateLambdaParameter(_lamdaParameters);
 }
Пример #3
0
 private BindingMemberVisitor(BindingMemberVisitor innerVisitor, IEnumerable <string> lambdaParameters, IDataContext context)
     : this()
 {
     _ignoreLambda = true;
     _members      = innerVisitor._members;
     _staticNodes  = innerVisitor._staticNodes;
     if (innerVisitor._lamdaParameters != null)
     {
         _lamdaParameters.AddRange(innerVisitor._lamdaParameters);
     }
     _lamdaParameters.AddRange(lambdaParameters);
     Context = context;
     BindingExtensions.CheckDuplicateLambdaParameter(_lamdaParameters);
 }