public CassieQuery(ILivrosRepositorio livrosRepositorio, ISeriesRepositorio seriesRepositorio) { Name = "Query"; Field <SerieType>( "serie", arguments: new QueryArguments( new QueryArgument <StringGraphType> { Name = "nome", Description = "Se omitido, retorna a série Instrumentos Mortais" } ), resolve: context => { var titulo = context.GetArgument <string>("nome"); return(seriesRepositorio.ObterSerie(titulo)); } ); Field <LivroType>( "livro", arguments: new QueryArguments( new QueryArgument <StringGraphType> { Name = "titulo" } ), resolve: context => { var titulo = context.GetArgument <string>("nome"); return(livrosRepositorio.ObterLivro(titulo)); } ); }
public SerieType(ILivrosRepositorio livrosRepositorio) { Field(x => x.Nome).Description("Nome da série de livros"); Field <ListGraphType <LivroType> >( "livros", resolve: context => { var livros = livrosRepositorio.ListarLivros().Where(x => x.Serie == context.Source.Nome); return(livros); } ); }
public LivrosServico(ILivrosRepositorio repositorio) : base(repositorio) { }