/// <summary> /// Creates a sub-query /// </summary> /// <param name="objectToQuery">Inner object to query</param> /// <param name="arguments">A delegate to build the arguments.</param> /// <param name="select">A delegate to build the list of fields to be selected.</param> /// <returns>An inner query builder</returns> public GraphQLQueryBuilder Query( string objectToQuery, Action <GraphQLArgumentsBuilder> arguments, Action <GraphQLSelectBuilder> select) { var childBuilder = new GraphQLQueryBuilder(_root ?? this, objectToQuery, arguments, select, _nesting + 1); _children.Add(childBuilder); return(childBuilder); }
private GraphQLQueryBuilder( GraphQLQueryBuilder root, string objectToQuery, Action <GraphQLArgumentsBuilder> arguments, Action <GraphQLSelectBuilder> select, int nesting = 0) { _objectToQuery = objectToQuery; arguments?.Invoke(_arguments); select?.Invoke(_select); _nesting = nesting; _root = root; }