コード例 #1
0
        public async Task <IActionResult> Index()
        {
            var user = await _accountManager.GetUserByUsernameAsync(User.Identity.Name);

            var topRatedBooks = await _bookManager.GetTopRatedBooks(6);

            var vm = new HomeBooksViewModel()
            {
                Books = new List <GenericBookViewModel>()
            };

            topRatedBooks.ForEach(b => vm.Books.Add(b.MapToGenericViewModel()));

            if (user != null)
            {
                foreach (var book in vm.Books)
                {
                    book.IsBookCheckedout    = _system.IsBookCheckedout(user, book.ISBN);
                    book.AreAllCopiesChecked = await _system.AreAllCopiesCheckedAsync(book.ISBN);

                    book.IsChBooksMaxQuota = _system.IsMaxCheckedoutQuota(user);
                    book.UserStatus        = user.Status.ToString();
                }
            }

            return(View(vm));
        }
コード例 #2
0
        public IActionResult Index(string searchString, int?page, string currentFilter)
        {
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            var books = dAccessish.GetBooks();

            if (!String.IsNullOrEmpty(searchString))
            {
                books = books.Where(
                    book => {
                    return(book.Title.ToLower().Contains(searchString.ToLower()) ||
                           book.Author.ToLower().Contains(searchString.ToLower()));
                }).ToList();
            }
            books = books.OrderBy(book => book.Title).ToList();
            return(View(HomeBooksViewModel.Create(books, page ?? 1, 4)));
        }