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); } }
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); } } }