Пример #1
0
        protected HqlTreeNode VisitNhCount(NhCountExpression expression)
        {
            string        functionName;
            HqlExpression countHqlExpression;

            if (expression is NhLongCountExpression)
            {
                functionName       = "count_big";
                countHqlExpression = _hqlTreeBuilder.CountBig(VisitExpression(expression.Expression).AsExpression());
            }
            else
            {
                functionName       = "count";
                countHqlExpression = _hqlTreeBuilder.Count(VisitExpression(expression.Expression).AsExpression());
            }

            return(IsCastRequired(functionName, expression.Expression, expression.Type)
                                ? (HqlTreeNode)_hqlTreeBuilder.Cast(countHqlExpression, expression.Type)
                                : _hqlTreeBuilder.TransparentCast(countHqlExpression, expression.Type));
        }
Пример #2
0
 protected HqlTreeNode VisitNhCount(NhCountExpression expression)
 {
     return(_hqlTreeBuilder.Cast(_hqlTreeBuilder.Count(VisitExpression(expression.Expression).AsExpression()), expression.Type));
 }
        protected virtual Expression BaseVisitNhCount(NhCountExpression expression)
        {
            Expression nx = base.VisitExpression(expression.Expression);

            return(nx != expression.Expression ? new NhCountExpression(nx, expression.Type) : expression);
        }
 protected virtual Expression VisitNhCount(NhCountExpression expression)
 {
     return(VisitUnhandledItem <NhCountExpression, Expression>(expression, "VisitNhCount", BaseVisitNhCount));
 }
        protected virtual Expression VisitNhCount(NhCountExpression expression)
        {
            Expression nx = VisitExpression(expression.Expression);

            return(nx != expression.Expression ? expression.CreateNew(nx) : expression);
        }
 protected virtual Expression VisitNhCount(NhCountExpression expression)
 {
     return(expression.Accept(this));
 }
Пример #7
0
 protected internal virtual Expression VisitNhCount(NhCountExpression expression)
 {
     return(VisitNhAggregated(expression));
 }
Пример #8
0
        protected virtual Expression VisitNhCount(NhCountExpression expression)
        {
            Expression nx = VisitExpression(expression.Expression);

            return(nx != expression.Expression ? new NhShortCountExpression(nx) : expression);
        }