public string GetHtmlFromView(List<Word> words, int page = 1) { var viewModel = new WordsListViewModel() { Words = words.OrderBy(w => w.WordId).Skip((page - 1)*PageSize).Take(PageSize), PagingInfo = new PagingInfo { CurrentPage = page, ItemsPerPage = PageSize, TotalItems = words.Count() }, NavType = "Seaching" }; var str = ViewToStringHelper.RenderViewToString(this.ControllerContext, "Index", viewModel); return str; }
//[ActionName("Defualt")] public ViewResult Index(string navType = "", int id = 0, int page = 1) { WordsListViewModel viewModel = null; switch (navType) { case "": viewModel = new WordsListViewModel { Words = _repository.Words .OrderBy(w => w.WordId) .Skip((page - 1) * PageSize).Take(PageSize), PagingInfo = new PagingInfo { CurrentPage = page, ItemsPerPage = PageSize, TotalItems = _repository.Words.Count() } }; break; case "Level": viewModel = new WordsListViewModel { Words = _repository.Words .Where(w => id == 0 || w.LevelId == id) .OrderBy(w => w.WordId) .Skip((page - 1) * PageSize).Take(PageSize), PagingInfo = new PagingInfo { CurrentPage = page, ItemsPerPage = PageSize, TotalItems = id == 0 ? _repository.Words.Count() : _repository.Words.Count(l => l.LevelId == id) }, Level = _repository.Levels.FirstOrDefault(l => l.LevelId == id), NavType = navType }; break; case "Dict": viewModel = new WordsListViewModel { Words = (from word in _repository.Words join wordsInDictionary in _repository.WordsInDictionaries on word.WordId equals wordsInDictionary.WordId where wordsInDictionary.DictionaryId == id select word).AsQueryable().OrderBy(w => w.LevelId).Skip((page - 1) * PageSize).Take(PageSize), PagingInfo = new PagingInfo { CurrentPage = page, ItemsPerPage = PageSize, TotalItems = id == 0 ? _repository.Words.Count() : _repository.WordsInDictionaries.Count(w => w.DictionaryId == id) }, Dictionary = _repository.Dictionaries.FirstOrDefault(l => l.DictionaryId == id), NavType = navType }; break; } //ViewBag.Words = viewModel.Words; return View(viewModel); }
public ActionResult Searchable(string term = "", int page = 1) { var viewModel = new WordsListViewModel() { Words = _repository.Words.Where(w => term == "" || w.Name.Contains(term)).OrderBy(w => w.WordId) .Skip((page - 1)*PageSize).Take(PageSize), PagingInfo = new PagingInfo() { CurrentPage = page, ItemsPerPage = PageSize, TotalItems = _repository.Words.Count(w => term == "" || w.Name.Contains(term)) }, NavType = "Searching", }; var str = ViewToStringHelper.RenderViewToString(this.ControllerContext, "Index", viewModel); return Content(str); }
public ViewResult Index1(WordsListViewModel model) { //ViewBag.Words = viewModel.Words; return View("Index",model); }