Beispiel #1
0
        /// <inheritdoc />
        public string Render(IGraphQLOperation query)
        {
            var context = new QueryRenderingContext();
            var content = new QueryContentAppender(context);

            content.Append($"{Render(query.Type)} ")
            .Append(RenderOperationName(query.Name))
            .Append(Render(query.SelectionSet, context));

            return(content.ToString());
        }
Beispiel #2
0
        private string Render(IFieldSelectionItem fieldSelection, QueryRenderingContext context)
        {
            var content = new QueryContentAppender(context);

            if (!string.IsNullOrWhiteSpace(fieldSelection.Alias))
            {
                content.Append($"{fieldSelection.Alias}: ");
            }

            content.Append(fieldSelection.FieldName);

            if (fieldSelection.Arguments.Count != 0)
            {
                content.Append(Render(fieldSelection.Arguments.ToList()));
            }

            if (fieldSelection.SelectionSet != null)
            {
                content.Append($" {Render(fieldSelection.SelectionSet, context)}");
            }

            return(content.ToString());
        }