Have one generic parameter for the entity and one for the projected type:
List<TResult> Get<TEntity, TResult>(Expr<Func<TEntity, TResult>> selector)
Consider just exposing a queryable:
IQueryable<T> Query<T>() { return _context.GetTable<T>(); }
This makes all of these issues go away. Your Get*
methods add no value. They just restrict the possible query patterns.