public override DbExpression Visit(DbElementExpression expression)
        {
            EntityUtil.CheckArgumentNull(expression, "expression");

            Func <DbExpression, DbExpression> resultConstructor;

            if (expression.IsSinglePropertyUnwrapped)
            {
                //
                resultConstructor = CqtBuilder.CreateElementExpressionUnwrapSingleProperty;
            }
            else
            {
                resultConstructor = CqtBuilder.Element;
            }

            return(VisitUnary(expression, resultConstructor));
        }
 /// <summary>
 /// Typed visitor pattern method for DbElementExpression.
 /// </summary>
 /// <param name="expression">The DbElementExpression that is being visited.</param>
 /// <returns>An instance of TResultType.</returns>
 public abstract TResultType Visit(DbElementExpression expression);
 /// <summary>
 /// Visitor pattern method for <see cref="DbElementExpression"/>.
 /// </summary>
 /// <param name="expression">The DbElementExpression that is being visited.</param>
 /// <exception cref="ArgumentNullException"><paramref name="expression"/> is null</exception>
 public override void Visit(DbElementExpression expression)
 {
     VisitUnaryExpression(expression);
 }
示例#4
0
 /// <summary>
 /// Visitor pattern method for DbElementExpression.
 /// </summary>
 /// <param name="expression">The DbElementExpression that is being visited.</param>
 public abstract void Visit(DbElementExpression expression);