public StarWarsQuery(StarWarsData data) { Name = "Query"; Field <CharacterInterface>("hero", resolve: context => data.GetDroidByIdAsync("3")); Field <HumanType>( "human", arguments: new QueryArguments( new [] { new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "id", Description = "id of the human" } }), resolve: context => data.GetHumanByIdAsync((string)context.Arguments["id"]) ); Field <DroidType>( "droid", arguments: new QueryArguments( new [] { new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "id", Description = "id of the droid" } }), resolve: context => data.GetDroidByIdAsync((string)context.Arguments["id"]) ); Field <MatterType>( "matter", arguments: new QueryArguments( new[] { new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "reference", Description = "reference of the droid" } }), resolve: context => data.GetMatterByReferenceAsync((string)context.Arguments["reference"]) ); }