public PartialViewResult GetPage(int pagNr, string genre) { IList <DataLayer.Book> books; if (string.IsNullOrEmpty(genre) || genre == "All") { books = BookCore.GetAll().OrderBy(book => book.Title).ToList(); } else { books = BookCore.GetList(b => b.Genre == genre, new[] { nameof(Book.Rates), $"{nameof(Book.Comments)}.{nameof(DataLayer.Comment.User)}" }).OrderBy(book => book.Title).ToList(); } List <BookViewModel> booksVMList = DLtoModelsConvertor.ConvertBookDLIntoBookVM(books); IEnumerable <BookViewModel> pageElements = null; pageElements = booksVMList.Skip(3 * pagNr - 3).Take(3); BookVMPaginationModel paginationResult = new BookVMPaginationModel() { TotalItems = booksVMList.Count, Books = pageElements, Page = pagNr }; return(PartialView("~/Views/Home/_BooksGallery.cshtml", paginationResult)); }
public JsonResult CreateBook(BookViewModel book) { var file = Request.Files["PictureUrl"]; var url = AzureHelper.Upload(file, "PictureUrl"); book.PictureUrl = url; var createdBook = BookCore.Create(book); return(Json(createdBook)); }
public PartialViewResult GetBookDetails(Guid id) { DataLayer.Book book; if (id == Guid.Empty) { return(null); } else { book = BookCore.GetSingle(b => b.Id == id, new[] { nameof(Book.Rates), $"{nameof(Book.Comments)}.{nameof(DataLayer.Comment.User)}" }); } BookViewModel bookVM = DLtoModelsConvertor.ConvertBookDLIntoBookVM(book); bookVM.Comments = bookVM.Comments.Where(c => c.Status == EntityStatus.Active).ToList(); return(PartialView("~/Views/Home/_BookDetails.cshtml", bookVM)); }
public ActionResult Index() { var books = BookCore.GetAll(new[] { nameof(Book.Rates), $"{nameof(Book.Comments)}.{nameof(DataLayer.Comment.User)}" }).OrderBy(book => book.Title).ToList(); List <BookViewModel> booksVMList = DLtoModelsConvertor.ConvertBookDLIntoBookVM(books); var pageElements = booksVMList.Skip(0).Take(3); BookVMPaginationModel paginationResult = new BookVMPaginationModel() { TotalItems = booksVMList.Count, Books = pageElements, Page = 0 }; return(View(paginationResult)); }
public BookController() { Core = new BookCore(); }