octokit.graphql.net icon indicating copy to clipboard operation
octokit.graphql.net copied to clipboard

Auto-paging doesn't work in mutations.

Open grokys opened this issue 7 years ago • 0 comments

Trying to use auto-paging in the select part of a mutation fails:

var mutation = new Mutation()
                .AddPullRequestReview(addReview)
                .Select(review => new PullRequestReviewModel
                {
                    Id = review.PullRequestReview.Id.Value,
                    Body = body,
                    CommitId = review.PullRequestReview.Commit.Oid,
                    Comments = review.PullRequestReview.Comments(100, null, null, null).AllPages().Select(comment => new CommentAdapter
                    {
                        Id = comment.Id.Value,
                        Author = new ActorModel
                        {
                            Login = comment.Author.Login,
                            AvatarUrl = comment.Author.AvatarUrl(null),
                        },
                        Body = comment.Body,
                        CommitSha = comment.Commit.Oid,
                        CreatedAt = comment.CreatedAt,
                        DiffHunk = comment.DiffHunk,
                        OriginalCommitId = comment.OriginalCommit.Oid,
                        OriginalPosition = comment.OriginalPosition,
                        Path = comment.Path,
                        Position = comment.Position,
                        ReplyTo = comment.ReplyTo.Id.Value,
                    }).ToList(),
                    State = (GitHub.Models.PullRequestReviewState)review.PullRequestReview.State,
                    Author = new ActorModel
                    {
                        Login = review.PullRequestReview.Author.Login,
                        AvatarUrl = review.PullRequestReview.Author.AvatarUrl(null),
                    },
                });
System.InvalidOperationException occurred
  HResult=-2146233079
  Message=No method 'Node' exists on type 'Octokit.GraphQL.Mutation'.
  Source=System.Core
  StackTrace:
       at System.Linq.Expressions.Expression.FindMethod(Type type, String methodName, Type[] typeArgs, Expression[] args, BindingFlags flags)
       at System.Linq.Expressions.Expression.Call(Expression instance, String methodName, Type[] typeArguments, Expression[] arguments)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.CreateNodeQuery(MethodCallExpression expression, MethodCallExpression selector)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.AddSubquery(MethodCallExpression expression, MethodCallExpression selector, Expression pageInfoSelector)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.RewriteListExtension(MethodCallExpression expression)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitMethodCall(MethodCallExpression node, MemberInfo alias)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitMethodCall(MethodCallExpression node)
       at System.Linq.Expressions.MethodCallExpression.Accept(ExpressionVisitor visitor)
       at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.RewriteListExtension(MethodCallExpression expression)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitMethodCall(MethodCallExpression node, MemberInfo alias)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitMethodCall(MethodCallExpression node)
       at System.Linq.Expressions.MethodCallExpression.Accept(ExpressionVisitor visitor)
       at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.BookmarkAndVisit(Expression left)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitMemberAssignment(MemberAssignment node)
       at System.Linq.Expressions.ExpressionVisitor.VisitMemberBinding(MemberBinding node)
       at System.Linq.Expressions.ExpressionVisitor.Visit[T](ReadOnlyCollection`1 nodes, Func`2 elementVisitor)
       at System.Linq.Expressions.ExpressionVisitor.VisitMemberInit(MemberInitExpression node)
       at System.Linq.Expressions.MemberInitExpression.Accept(ExpressionVisitor visitor)
       at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitLambda[T](Expression`1 node)
       at System.Linq.Expressions.Expression`1.Accept(ExpressionVisitor visitor)
       at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.RewriteValueExtension(MethodCallExpression expression)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitMethodCall(MethodCallExpression node, MemberInfo alias)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.VisitMethodCall(MethodCallExpression node)
       at System.Linq.Expressions.MethodCallExpression.Accept(ExpressionVisitor visitor)
       at System.Linq.Expressions.ExpressionVisitor.Visit(Expression node)
       at Octokit.GraphQL.Core.Builders.QueryBuilder.Build[TResult](IQueryableValue`1 query)
       at Octokit.GraphQL.QueryableValueExtensions.Compile[T](IQueryableValue`1 expression)
       at Octokit.GraphQL.ConnectionExtensions.Run[T](IConnection connection, IQueryableValue`1 expression)
       at GitHub.InlineReviews.Services.PullRequestSessionService.<PostStandaloneReviewComment>d__33.MoveNext() in D:\projects\VisualStudio\src\GitHub.InlineReviews\Services\PullRequestSessionService.cs:line 728
  InnerException: 

grokys avatar Jun 01 '18 07:06 grokys