示例#1
0
        private static dynamic GetVariables(GraphiQLInput input)
        {
            if (string.IsNullOrWhiteSpace(input.Variables))
            {
                return(new ExpandoObject());
            }

            return(JsonConvert.DeserializeObject <ExpandoObject>(input.Variables));
        }
        public IActionResult Post([FromBody] GraphiQLInput input)
        {
            if (input is null)
            {
                return(BadRequest(error: "xxx"));
            }


            return(this.Json(this.schema.Execute(input.Query)));
        }
        private static dynamic GetVariables(GraphiQLInput input)
        {
            var variables = input.Variables?.ToString();

            if (string.IsNullOrEmpty(variables))
            {
                return(new ExpandoObject());
            }

            return(JsonConvert.DeserializeObject <ExpandoObject>(variables));
        }
示例#4
0
 public JsonResult Post([FromBody] GraphiQLInput input)
 {
     try
     {
         return(this.Json(
                    new
         {
             data = this.schema.Execute(input.Query, GetVariables(input))
         }
                    ));
     }
     catch (Exception ex)
     {
         return(this.Json(
                    new
         {
             errors = new dynamic[] { new { message = ex.Message } }
         }
                    ));
     }
 }
 public JsonResult Post([FromBody] GraphiQLInput input)
 {
     return(this.Json(this.schema.Execute(input.Query, GetVariables(input), input.OperationName)));
 }