public async Task <IActionResult> Post([FromBody] GraphQLQuery query) { var inputs = query.Variables.ToInputs(); var schema = new Schema() { Query = new CustomerQuery() }; var result = await new DocumentExecuter().ExecuteAsync(_ => { _.Schema = schema; _.Query = query.Query; _.OperationName = query.OperationName; _.Inputs = inputs; }); return(Ok(result)); }
public async Task <IActionResult> PostResult([FromBody] GraphQLQuery query) { if (query == null) { throw new ArgumentNullException(nameof(query)); } var inputs = query.Variables?.ToInputs(); var executionOptions = new ExecutionOptions() { Schema = _schema, Query = query.Query, Inputs = inputs }; var result = await _documentExecuter.ExecuteAsync(executionOptions); if (result.Errors?.Count > 0) { return(BadRequest(result)); } return(Ok(result)); }