public async Task <IEnumerable <BookstoreResource> > GetBookStore(BookstoreResource bookstoreResource) { var bookstore = await context.Bookstores.ToListAsync(); // var bookstore = await FakeRepo(); return(mapper.Map <IEnumerable <Bookstore>, IEnumerable <BookstoreResource> >(bookstore)); }
public async Task <IEnumerable <BookstoreResource> > GetBookStore(BookstoreResource bookstoreResource, FilterResource filterResource) { var filter = mapper.Map <FilterResource, Filter>(filterResource); var query = context.Bookstores.AsQueryable(); if (filter.Id.HasValue) { query = query.Where(b => b.Id == filter.Id.Value); } //start code for sorting var columnsMap = new Dictionary <string, Expression <Func <Bookstore, object> > >() { ["name"] = b => b.Name, ["title"] = b => b.Title, ["authorName"] = b => b.AuthorName, ["publisherName"] = b => b.PublisherName, }; query = query.ApplyOrdering(filter, columnsMap); //end code for sorting var bookstore = await query.ToListAsync(); return(mapper.Map <IEnumerable <Bookstore>, IEnumerable <BookstoreResource> >(bookstore)); }
public async Task <IActionResult> CreateBookstore([FromBody] BookstoreResource bookstoreResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var bookstore = mapper.Map <BookstoreResource, Bookstore>(bookstoreResource); context.Bookstores.Add(bookstore); await context.SaveChangesAsync(); return(Ok(bookstore)); }
public async Task <IActionResult> UpdateBookstore(int id, [FromBody] BookstoreResource bookstoreResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var bookstore = await context.Bookstores.FindAsync(id); if (bookstore == null) { return(NotFound()); } mapper.Map <BookstoreResource, Bookstore>(bookstoreResource, bookstore); await context.SaveChangesAsync(); return(Ok(bookstore)); }
public async Task <IActionResult> CreateBookstore([FromBody] BookstoreResource bookstoreResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var bookstore = mapper.Map <BookstoreResource, Bookstore>(bookstoreResource); try { context.Bookstores.Add(bookstore); await context.SaveChangesAsync(); } catch (Exception e) { throw new Exception(e.Message); } //var books = await FakeRepo(); //bookstore.Id = books.Count +1; // books.Add(bookstore); return(Ok(bookstore)); }