Cast() public method

public Cast ( HqlExpression expression, System type ) : HqlCast
expression HqlExpression
type System
return HqlCast
		public override HqlTreeNode BuildHql(
			MethodInfo method,
			Expression targetObject,
			ReadOnlyCollection<Expression> arguments,
			HqlTreeBuilder treeBuilder,
			IHqlExpressionVisitor visitor)
		{
			var left = treeBuilder.Cast(visitor.Visit(targetObject).AsExpression(), typeof(string));
			var right = treeBuilder.Cast(visitor.Visit(arguments.First()).AsExpression(), typeof(string));

			var leftSubstring = treeBuilder.MethodCall("substring", left, treeBuilder.Constant(4));
			var rightSubstring = treeBuilder.MethodCall("substring", right, treeBuilder.Constant(4));
			var equals = treeBuilder.Equality(leftSubstring, rightSubstring);
			return equals;
		}
 public override HqlTreeNode BuildHql(MethodInfo method, Expression targetObject,
     ReadOnlyCollection<Expression> arguments, HqlTreeBuilder treeBuilder, IHqlExpressionVisitor visitor)
 {
     return treeBuilder.Cast(visitor.Visit(arguments[0]).AsExpression(), typeof(string));
 }
Exemplo n.º 3
0
 public override HqlTreeNode BuildHql(MethodInfo method, Expression targetObject, ReadOnlyCollection<Expression> arguments, HqlTreeBuilder treeBuilder, IHqlExpressionVisitor visitor)
 {
     HqlExpression argument0Expression = visitor.Visit(arguments[0]).AsExpression();
     HqlTreeNode result = treeBuilder.Cast(argument0Expression, method.ReturnType);
     return result;
 }