Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="source"></param>
        /// <param name="skip"></param>
        /// <returns></returns>
        private Expression BindSkip(Expression source, Expression skip)
        {
            this.Visit(skip);
            // Use the ResultFilter (PagingFilter) as a default
            if (filter != null)
            {
                switch (filter.GetType().Name)
                {
                case "LimitFilter":
                    filter = new tridion.PagingFilter((Int32)((ConstantExpression)skip).Value, ((tridion.LimitFilter)filter).ResultLimit);
                    break;

                case "PagingFilter":
                    filter = new tridion.PagingFilter((Int32)((ConstantExpression)skip).Value, ((tridion.PagingFilter)filter).ResultLimit);
                    break;

                default:
                    break;
                }
            }
            else
            {
                filter = new tridion.PagingFilter((Int32)((ConstantExpression)skip).Value, -1);
            }
            this.Visit(source);
            return(source);
        }
Exemplo n.º 2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="source"></param>
 /// <param name="take"></param>
 /// <returns></returns>
 private Expression BindTake(Expression source, Expression take)
 {
     this.Visit(take);
     // Use the ResultFilter (LimitFilter) as a default
     if (filter != null)
     {
         if (filter is tridion.PagingFilter)
         {
             filter = new tridion.PagingFilter(((tridion.PagingFilter)filter).FirstResult, (Int32)((ConstantExpression)take).Value);
         }
     }
     else
     {
         filter = new tridion.LimitFilter((Int32)((ConstantExpression)take).Value);
     }
     this.Visit(source);
     return(source);
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="source"></param>
 /// <param name="take"></param>
 /// <returns></returns>
 private Expression BindTake(Expression source, Expression take)
 {
     this.Visit(take);
     // Use the ResultFilter (LimitFilter) as a default
     if (filter != null)
     {
         if (filter is tridion.PagingFilter)
         {
             filter = new tridion.PagingFilter(((tridion.PagingFilter)filter).FirstResult, (Int32)((ConstantExpression)take).Value);
         }
     }
     else
     {
         filter = new tridion.LimitFilter((Int32)((ConstantExpression)take).Value);
     }
     this.Visit(source);
     return source;
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="source"></param>
 /// <param name="skip"></param>
 /// <returns></returns>
 private Expression BindSkip(Expression source, Expression skip)
 {
     this.Visit(skip);
     // Use the ResultFilter (PagingFilter) as a default
     if (filter != null)
     {
         switch (filter.GetType().Name)
         {
             case "LimitFilter":
                 filter = new tridion.PagingFilter((Int32)((ConstantExpression)skip).Value, ((tridion.LimitFilter)filter).ResultLimit);
                 break;
             case "PagingFilter":
                 filter = new tridion.PagingFilter((Int32)((ConstantExpression)skip).Value, ((tridion.PagingFilter)filter).ResultLimit);
                 break;
             default:
                 break;
         }
     }
     else
     {
         filter = new tridion.PagingFilter((Int32)((ConstantExpression)skip).Value, -1);
     }
     this.Visit(source);
     return source;
 }