Skip to content

GraphQL

Maxim edited this page Dec 9, 2018 · 4 revisions
String query = @"
    {
        human(id: ""1"") {
          name
          friends {
            name
            appearsIn {
               name
            }
          }
       }
    }
";

//create data adapter
var dataAdapter = new StarWars.StarWarsDataAdapter(false, "test");
//build odata model
IEdmModel edmModel = dataAdapter.BuildEdmModelFromEfCoreModel();
//create graphql query parser
var parser = new OeGraphqlParser(edmModel);

//get graphql result
ExecutionResult result = await parser.Execute(query);
//serialize json
String json = new DocumentWriter(true).Write(result);
Console.WriteLine(json);

GraphQL query translate to OData query:
Human?$filter=Id eq '1'&$select=Name&$expand=Friends($select=Name;$expand=AppearsIn($select=Name))

GraphQL test

Clone this wiki locally