8.1.3 Configurando y probando graphQL

Una vez que tenemos el query lo vamos a agregar en la clase Startup.cs en el método ConfigureServices agregamos Graph (GraphQLServer), agregamos nuestra clase Query (AddQueryType<Query>) y agregamos las opciones que utilizaremos en este caso AddProjections(), AddFiltering() y AddSorting()

Startup.cs
public void ConfigureServices(IServiceCollection services)
{
   //Código
   services.AddGraphQLServer()
           .AddQueryType<Query>().AddProjections()
           .AddFiltering().AddSorting()

En el método configure agregamos la ruta para acceder a grapQL en la parte de app.UseEndpoints

Startup.cs
public void Configure(IApplicationBuilder app,
                     IWebHostEnvironment env, 
                     ILogger<Startup> logger)
{    
    //Código
    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllers();
        endpoints.MapGraphQL("/graphql");
    });

Ya viene configurado con una opción para consultar tus servicios llamado Banana Cake Pop. El cual puedes acceder desde http://localhost:5000/grapqhl Da clic en Browse Schema para ver la definición del esquema y probar

Puedes configurar mas opciones como la autenticación. Da clic en Apply

Da clic en el tab Operations y Agrega lo siguiente para traer algunos campos de la tabla caducidad

query TestQuery {
  caducidad(order: { fecha: ASC }) {
    id
    fecha
    producto {
      nombre
    }
    cliente {
      id
      nombreComercial
      razonSocial
    }
  }
}

Last updated