-
Notifications
You must be signed in to change notification settings - Fork 32
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))