An SqlExpression that will cast a value retrieved by the evaluation of another expression into a given SQL data type.
Inheritance: SqlExpression
        public override SqlExpression VisitCast(SqlCastExpression castExpression)
        {
            builder.Append("CAST ");
            Visit(castExpression.Value);
            builder.Append(" AS ");
            builder.Append(castExpression.SqlType);

            return base.VisitCast(castExpression);
        }
Example #2
0
        public override SqlExpression VisitCast(SqlCastExpression castExpression)
        {
            builder.Append("CAST ");
            Visit(castExpression.Value);
            builder.Append(" AS ");
            builder.Append(castExpression.SqlType);

            return(base.VisitCast(castExpression));
        }
Example #3
0
        public virtual SqlExpression VisitCast(SqlCastExpression expression)
        {
            var value = expression.Value;

            if (value != null)
            {
                value = Visit(value);
            }

            return(SqlExpression.Cast(value, expression.TargetType));
        }
Example #4
0
        public override SqlExpression VisitCast(SqlCastExpression castExpression)
        {
            var valueExp = Visit(castExpression.Value);

            if (valueExp.ExpressionType != SqlExpressionType.Constant)
            {
                throw new ExpressionEvaluateException(String.Format("Cannot CAST an expression of type {0}.", valueExp.ExpressionType));
            }

            var value  = ((SqlConstantExpression)valueExp).Value;
            var casted = value.CastTo(castExpression.SqlType);

            return(SqlExpression.Constant(casted));
        }
Example #5
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="castExpression"></param>
 /// <returns></returns>
 public virtual SqlExpression VisitCast(SqlCastExpression castExpression)
 {
     // TODO:
     return castExpression;
 }
        public override SqlExpression VisitCast(SqlCastExpression castExpression)
        {
            var valueExp = Visit(castExpression.Value);
            if (valueExp.ExpressionType != SqlExpressionType.Constant)
                throw new ExpressionEvaluateException(String.Format("Cannot CAST an expression of type {0}.", valueExp.ExpressionType));

            var value = ((SqlConstantExpression) valueExp).Value;
            var casted = value.CastTo(castExpression.SqlType);
            return SqlExpression.Constant(casted);
        }
Example #7
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="castExpression"></param>
 /// <returns></returns>
 public virtual SqlExpression VisitCast(SqlCastExpression castExpression)
 {
     // TODO:
     return(castExpression);
 }