示例#1
0
 internal RemoteQueryable(Type elemntType, IRemoteQueryProvider provider, Expression expression)
 {
     _elemntType = elemntType;
     _provider   = provider;
     _expression = expression ?? Expression.Constant(this);
 }
示例#2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RemoteQueryable{T}"/> class.
 /// </summary>
 public RemoteQueryable(IRemoteQueryProvider provider, Expression?expression = null)
     : base(typeof(T), provider, expression)
 {
 }
示例#3
0
 internal RemoteQueryable(Type elemntType, IRemoteQueryProvider provider)
     : this(elemntType, provider, null)
 {
 }
示例#4
0
 internal RemoteQueryable(IRemoteQueryProvider provider)
     : base(typeof(T), provider)
 {
 }
示例#5
0
 internal RemoteQueryable(IRemoteQueryProvider provider, Expression expression)
     : base(typeof(T), provider, expression)
 {
 }
示例#6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RemoteQueryable"/> class.
 /// </summary>
 public RemoteQueryable(Type elemntType, IRemoteQueryProvider provider, Expression?expression = null)
 {
     ElementType = elemntType.CheckNotNull(nameof(elemntType));
     Provider    = provider.CheckNotNull(nameof(provider));
     Expression  = expression ?? Expression.Constant(this);
 }
 public static TResult InvokeAndUnwrap <TResult>(this IRemoteQueryProvider queryProvider, MethodInfo method, Expression expression)
 => method
 .MakeGenericMethod(typeof(IQueryable).IsAssignableFrom(expression.Type) ? typeof(object) : expression.Type)
 .InvokeAndUnwrap <TResult>(queryProvider, expression);