Beispiel #1
0
        public OperationResult <BookResponse> Execute(int id)
        {
            try
            {
                DbBook       book       = _context.Books.FirstOrDefault(x => x.Id == id);
                DbAuthorBook authorBook = _context.Authors.FirstOrDefault(x => x.BookId == id);


                if (authorBook != null)
                {
                    _context.Authors.Remove(authorBook);
                }
                _context.SaveChanges();

                if (book == null)
                {
                    throw new ArgumentException("Model doesn't exist");
                }
                _context.Books.Remove(book);
                _context.SaveChanges();

                return(new OperationResult <BookResponse>()
                {
                    IsSuccess = true
                });
            }
            catch (ArgumentOutOfRangeException exc)
            {
                return(new OperationResult <BookResponse>()
                {
                    IsSuccess = false,
                    ErrorMessages = { exc.Message }
                });
            }
        }
        public OperationResult <BookResponse> Execute(int id)
        {
            DbBook       book   = _bookDbContext.Books.FirstOrDefault(b => b.Id == id);
            DbAuthorBook author = _bookDbContext.Authors.FirstOrDefault(a => a.BookId == id);

            try
            {
                if (book == null)
                {
                    throw new ArgumentException("Incorrect id");
                }

                return(new OperationResult <BookResponse>()
                {
                    IsSuccess = true,
                    Body = _responseMapper.Map(book, author)
                });
            }
            catch (ArgumentException exc)
            {
                return(new OperationResult <BookResponse>()
                {
                    IsSuccess = false,
                    ErrorMessages = { exc.Message }
                });
            }
        }
Beispiel #3
0
        public void DbAuthorBookMapperTest()
        {
            _bookRequest.Author = "abc";
            var response = _dbAuthorBookMapper.Map(_bookRequest);
            var dbAuthor = new DbAuthorBook(1, "abc");

            Assert.AreEqual(dbAuthor.Author, response.Author);
        }
 public BookResponse Map([NotNull] DbBook book, DbAuthorBook authorBook)
 {
     return(new BookResponse()
     {
         Name = book.Name,
         Year = book.Year,
         Description = book.Description,
         Author = authorBook?.Author
     });
 }
Beispiel #5
0
        public OperationResult <BookResponse> Execute(
            BookRequest book)
        {
            try
            {
                DbBook       oldBook    = _context.Books.FirstOrDefault(x => x.Id == book.Id);
                DbAuthorBook authorBook = _context.Authors.FirstOrDefault(x => x.BookId == book.Id);

                if (oldBook == null)
                {
                    throw new ArgumentException("Old model doesn't exist");
                }

                _context.Books.Remove(oldBook);
                _context.Books.Add(_dbBookMapper.Map(book));
                if (authorBook != null)
                {
                    _context.Authors.Remove(authorBook);
                }

                _context.Authors.Add(_dbAuthorBookMapper.Map(book));
                _context.SaveChanges();

                return(new OperationResult <BookResponse>()
                {
                    IsSuccess = true
                });
            }
            catch (Exception exc)
            {
                return(new OperationResult <BookResponse>()
                {
                    IsSuccess = false,
                    ErrorMessages = { exc.Message }
                });
            }
        }