Esempio n. 1
0
        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));
        }
Esempio n. 5
0
        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));
        }