public BookQuery(BookQueryHandler queryHandler) { Field <BookType>( "book", arguments: new QueryArguments( new QueryArgument <IdGraphType> { Name = "id", Description = "The ID of the book." }), resolve: context => { var id = context.GetArgument <int>("id"); var query = new GetBookByIdQuery { Id = id }; var book = queryHandler.Handle(query); return(book); }); Field <ListGraphType <BookType> >( "books", resolve: context => { var query = new GetBooksQuery(); var books = queryHandler.Handle(query); return(books); }); }
public async Task <IActionResult> Get(Guid id) { var query = new GetBookByIdQuery(id); var result = await _mediator.Send(query); return(result != null ? (IActionResult)Ok(result) : NotFound()); }
public async Task <Book> Handle(GetBookByIdQuery query) { return(await _libraryContext.Set <Book>() .Include(e => e.Author) .Include(e => e.Category) .Include(e => e.Country) .Include(e => e.Language) .Include(e => e.Publisher) .SingleOrDefaultAsync(e => e.Id == query.Id)); }
public async Task <IActionResult> GetBookById(int libraryId, int bookId, CancellationToken token) { var request = new GetBookByIdQuery(libraryId, bookId, _userHelper.Account?.Id); var book = await _queryProcessor.ExecuteAsync(request, cancellationToken : token); if (book != null) { return(new OkObjectResult(_bookRenderer.Render(book, libraryId))); } return(new NotFoundResult()); }
public Book Get(GetBookByIdQuery query) { // Process query... & return }