Ejemplo n.º 1
0
        /// <summary>
        /// modified as internal because LINQ to Twitter is Unusable
        /// without TwitterContext, but provider still needs access
        /// </summary>
        /// <param name="provider">IQueryProvider</param>
        /// <param name="expression">Expression Tree</param>
        internal TwitterQueryable(
            TwitterQueryProvider provider,
            Expression expression)
        {
            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            if (expression == null)
            {
                throw new ArgumentNullException("expression");
            }

#if NETFX_CORE
            if (!typeof(IQueryable <T>).GetTypeInfo().IsAssignableFrom(expression.Type.GetTypeInfo()))
            {
                throw new ArgumentOutOfRangeException("expression");
            }
#else
            if (!typeof(IQueryable <T>).IsAssignableFrom(expression.Type))
            {
                throw new ArgumentOutOfRangeException("expression");
            }
#endif

            Provider   = provider;
            Expression = expression;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// init with TwitterContext
        /// </summary>
        /// <param name="context"></param>
        public TwitterQueryable(TwitterContext context)
        {
            Provider   = new TwitterQueryProvider();
            Expression = Expression.Constant(this);

            // lets provider reach back to TwitterContext,
            // where execute implementation resides
            (Provider as TwitterQueryProvider).Context = context;
        }
Ejemplo n.º 3
0
        /// <summary>
        /// modified as internal because LINQ to Twitter is Unusable
        /// without TwitterContext, but provider still needs access
        /// </summary>
        /// <param name="provider">IQueryProvider</param>
        /// <param name="expression">Expression Tree</param>
        internal TwitterQueryable(
            TwitterQueryProvider provider,
            Expression expression)
        {
            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            if (expression == null)
            {
                throw new ArgumentNullException("expression");
            }

            if (!typeof(IQueryable <T>).IsAssignableFrom(expression.Type))
            {
                throw new ArgumentOutOfRangeException("expression");
            }

            Provider   = provider;
            Expression = expression;
        }