public ActionResult DeleteRelation(long book_id, string series) { long id = db.Series.Where(s => s.series == series).Select(s => s.id).First(); Book_Series bs = db.Book_Series.Where(s => s.SeriesId == id && s.BookId == book_id).First(); db.Book_Series.Remove(bs); db.TrySaveChanges(); return(RedirectToAction("Details", "Books", new { id = book_id })); }
public ActionResult Create(long book_id, [Bind(Include = "id,series")] Series serie) { if (ModelState.IsValid) { long series_id; BooksController bc = new BooksController(); if (bc.IsInDatabase(serie.series, null, 2) == false) { db.Series.Add(serie); db.SaveChanges(); series_id = serie.id; } else { series_id = db.Series.Where(s => s.series == serie.series).Select(s => s.id).First(); } if (book_id != 0) { Book_Series bs = new Book_Series() { BookId = book_id, SeriesId = series_id }; db.Book_Series.Add(bs); db.TrySaveChanges(); } return(RedirectToAction("Details", "Books", new { id = book_id })); } return(View(serie)); }
public ActionResult Create(CombinedDataModels newBook) { if (ModelState.IsValid) { long book_id; long author_id; long genre_id; long series_id; //***************************check if title, author, genre and series are in database************************ if (IsInDatabase(newBook.Books.title, null, 0) == false) { Books book; if (newBook.cover == null) { book = new Books() { title = newBook.Books.title, year = newBook.Books.year, description = newBook.Books.description, cover = null } } ; else { book = new Books() { title = newBook.Books.title, year = newBook.Books.year, description = newBook.Books.description, cover = newBook.cover.FileName }; newBook.cover.SaveAs(HttpContext.Server.MapPath(ConfigurationManager.AppSettings["bookCovers"]) + book.cover); } db.Books.Add(book); db.TrySaveChanges(); book_id = book.id; } else { book_id = db.Books.Where(b => b.title == newBook.Books.title).Select(b => b.id).First(); } if (IsInDatabase(newBook.Authors.firstName, newBook.Authors.lastName, 3) == false) { Authors author; if (newBook.photo == null) { author = new Authors() { firstName = newBook.Authors.firstName, lastName = newBook.Authors.lastName, birthDate = newBook.Authors.birthDate, birthPlace = newBook.Authors.birthPlace, BIO = newBook.Authors.BIO, photo = null, sex = newBook.Authors.sex } } ; else { author = new Authors() { firstName = newBook.Authors.firstName, lastName = newBook.Authors.lastName, birthDate = newBook.Authors.birthDate, birthPlace = newBook.Authors.birthPlace, BIO = newBook.Authors.BIO, photo = newBook.photo.FileName, sex = newBook.Authors.sex }; newBook.photo.SaveAs(HttpContext.Server.MapPath(ConfigurationManager.AppSettings["authorPhotos"]) + author.photo); } db.Authors.Add(author); db.TrySaveChanges(); author_id = author.id; } else { author_id = db.Authors.Where(a => a.firstName == newBook.Authors.firstName && a.lastName == newBook.Authors.lastName).Select(a => a.id).First(); } if (BookIsBounded(book_id, author_id, 0) == false) { Book_Authors bk = new Book_Authors() { BookId = book_id, AuthorId = author_id }; db.Book_Authors.Add(bk); } if (IsInDatabase(newBook.Genres.genre, null, 1) == false) { Genres genre = new Genres() { genre = newBook.Genres.genre }; db.Genres.Add(genre); db.TrySaveChanges(); genre_id = genre.id; } else { genre_id = db.Genres.Where(g => g.genre == newBook.Genres.genre).Select(g => g.id).First(); } if (IsInDatabase(newBook.Series.series, null, 2) == false) { Series series = new Series() { series = newBook.Series.series }; db.Series.Add(series); db.TrySaveChanges(); series_id = series.id; } else { series_id = db.Series.Where(s => s.series == newBook.Series.series).Select(s => s.id).First(); } if (BookIsBounded(book_id, genre_id, 1) == false) { Book_Genres bg = new Book_Genres() { BookId = book_id, GenreId = genre_id }; db.Book_Genres.Add(bg); } if (BookIsBounded(book_id, series_id, 2) == false) { Book_Series bs = new Book_Series() { BookId = book_id, SeriesId = series_id }; db.Book_Series.Add(bs); } db.TrySaveChanges(); return(RedirectToAction("Index", "Books")); } return(View(newBook)); }