public async Task <List <BookDto> > QueryBooks(QueryBooksRequest request, string userIdentifier) { var bookQuery = _context.Book .Include(b => b.Genre) .AsNoTracking(); if (!string.IsNullOrEmpty(request.Genre)) { bookQuery = bookQuery.Where(book => book.GenreId == request.Genre); } if (!string.IsNullOrEmpty(request.Author)) { bookQuery = bookQuery.Where(book => book.Author.Contains(request.Author)); } if (!string.IsNullOrEmpty(request.Title)) { bookQuery = bookQuery.Where(book => book.Title.Contains(request.Title)); } var bookList = await bookQuery.ToListAsync(); return(_mapper.Map <List <BookDto> >(bookList)); }
private async Task <List <ClientBookDto> > QueryBooksFromServerAsync() { using (var client = new HttpClient()) { var dialog = UserDialogs.Instance.Loading("Loading"); var request = new QueryBooksRequest { Author = AuthorQuery, Title = TitleQuery, #region tmp ki lesz veve UserIdentifier = HbrApplication.UserIdentifier #endregion }; var result = await client.PostAsJsonAsync("https://hbr.azurewebsites.net/api/book/querybooks", request); if (!result.IsSuccessStatusCode) { var config = new AlertConfig { Message = "Nem sikerült kapcsolatot teremteni szerverrel.", Title = "Sikertelen kapcsolódás!", }; await UserDialogs.Instance.AlertAsync(config); Finish(); return(new List <ClientBookDto>()); } dialog.Dispose(); return(await result.Content.ReadAsAsync <List <ClientBookDto> >()); } }
public Task <List <BookDto> > QueryBooks([FromBody] QueryBooksRequest request) { //return _bookService.QueryBooks(request, UserId); #region tmp ki lesz veve return(_bookService.QueryBooks(request, request.UserIdentifier)); #endregion }