Exemple #1
0
        public void Post(BookDTO value)
        {
            Book model = new Book()
            {
                Name            = value.Name,
                Popularity      = value.Popularity,
                PublicationYear = value.PublicationYear
            };

            IBookRepository.Create(model);
            for (int i = 0; i < value.WriterId.Count; i++)
            {
                BookWriter BookWriter = new BookWriter()
                {
                    BookId   = model.Id,
                    WriterId = value.WriterId[i]
                };
                IBookWriterRepository.Create(BookWriter);
            }

            for (int i = 0; i < value.LibraryId.Count; i++)
            {
                BookLibrary BookLibrary = new BookLibrary()
                {
                    BookId    = model.Id,
                    LibraryId = value.LibraryId[i]
                };
                IBookLibraryRepository.Create(BookLibrary);
            }

            for (int i = 0; i < value.PublisherId.Count; i++)
            {
                BookPublisher BookPublisher = new BookPublisher()
                {
                    BookId      = model.Id,
                    PublisherId = value.PublisherId[i]
                };
                IBookPublisherRepository.Create(BookPublisher);
            }
        }
Exemple #2
0
        public void Put(int id, BookDTO value)
        {
            Book model = IBookRepository.Get(id);

            if (value.Name != null)
            {
                model.Name = value.Name;
            }
            if (value.Popularity != null)
            {
                model.Popularity = value.Popularity;
            }
            if (value.PublicationYear != 0)
            {
                model.PublicationYear = value.PublicationYear;
            }

            IBookRepository.Update(model);

            if (value.WriterId != null)
            {
                IEnumerable <BookWriter> MyBookWriters = IBookWriterRepository.GetAll().Where(x => x.BookId == id);
                foreach (BookWriter MyBookWriter in MyBookWriters)
                {
                    IBookWriterRepository.Delete(MyBookWriter);
                }
                for (int i = 0; i < value.WriterId.Count; i++)
                {
                    BookWriter BookWriter = new BookWriter()
                    {
                        BookId   = model.Id,
                        WriterId = value.WriterId[i]
                    };
                    IBookWriterRepository.Create(BookWriter);
                }
            }
            if (value.LibraryId != null)
            {
                IEnumerable <BookLibrary> MyLibraryBooks = IBookLibraryRepository.GetAll().Where(x => x.BookId == id);
                foreach (BookLibrary MyLibraryBook in MyLibraryBooks)
                {
                    IBookLibraryRepository.Delete(MyLibraryBook);
                }
                for (int i = 0; i < value.LibraryId.Count; i++)
                {
                    BookLibrary BookLibrary = new BookLibrary()
                    {
                        BookId    = model.Id,
                        LibraryId = value.LibraryId[i]
                    };
                    IBookLibraryRepository.Create(BookLibrary);
                }
            }
            if (value.PublisherId != null)
            {
                IEnumerable <BookPublisher> MyPublisherBooks = IBookPublisherRepository.GetAll().Where(x => x.BookId == id);
                foreach (BookPublisher MyPublisherBook in MyPublisherBooks)
                {
                    IBookPublisherRepository.Delete(MyPublisherBook);
                }
                for (int i = 0; i < value.PublisherId.Count; i++)
                {
                    BookPublisher BookPublisher = new BookPublisher()
                    {
                        BookId      = model.Id,
                        PublisherId = value.PublisherId[i]
                    };
                    IBookPublisherRepository.Create(BookPublisher);
                }
            }
        }