Esempio n. 1
0
        public IActionResult CreateBook(Guid authorId, [FromBody] BookCreateVM bookVM, [FromHeader(Name = "Accept")] string mediaType)
        {
            if (bookVM == null)
            {
                return(BadRequest());
            }
            if (bookVM.Title == bookVM.Description)
            {
                ModelState.AddModelError(nameof(BookCreateVM), "title and description can not be the same.");
            }
            if (!ModelState.IsValid)
            {
                return(new UnprocessableEntityObject(ModelState));
            }
            if (!libraryRepository.AuthorExists(authorId))
            {
                return(NotFound());
            }
            var book = Mapper.Map <Book>(bookVM);

            libraryRepository.AddBookForAuthor(authorId, book);
            if (!libraryRepository.Save())
            {
                throw new Exception($"Createing book for {authorId} failed to save");
            }
            var createdbook = Mapper.Map <BookVM>(book);

            if (mediaType == "application/vnd.marvin.hateoas+json")
            {
                return(CreatedAtRoute("GetBook", new { authorId = authorId, id = createdbook.Id }, CreatebookLinks(createdbook)));
            }
            else
            {
                return(CreatedAtRoute("GetBook", new { authorId = authorId, id = createdbook.Id }, createdbook));
            }
        }
Esempio n. 2
0
 public void Create(BookCreateVM book)
 {
     bookDM.CreateBook(book);
 }
Esempio n. 3
0
 public JsonResult Edit(BookCreateVM book)
 {
     bookDM.EditBook(book);
     return(Json(book.BookId));
 }
 public int EditBook(BookCreateVM book)
 {
     return(bookRepo.Edit(Mapper.Map <BookCreateEM>(book)));
 }
 public void CreateBook(BookCreateVM book)
 {
     bookRepo.Create(Mapper.Map <BookCreateEM>(book));
 }
Esempio n. 6
0
 public IActionResult Edit(long id, [FromBody] BookCreateVM book)
 {
     book.Id = id;
     bookService.EditBook(book);
     return(Ok());
 }
Esempio n. 7
0
        public IActionResult Create([FromBody] BookCreateVM book)
        {
            var id = bookService.CreateBook(book);

            return(Ok(new Identifier(id)));
        }
Esempio n. 8
0
        public void EditBook(BookCreateVM book)
        {
            var bookEM = mapper.ConvertTo <BookEM>(book);

            bookRepository.EditBook(bookEM);
        }
Esempio n. 9
0
        public long CreateBook(BookCreateVM book)
        {
            var bookEM = mapper.ConvertTo <BookEM>(book);

            return(bookRepository.CreateBook(bookEM));
        }