Пример #1
0
        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;
        }
Пример #2
0
        //[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);
        }
Пример #3
0
        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);
        }
Пример #4
0
 public ViewResult Index1(WordsListViewModel model)
 {
     //ViewBag.Words = viewModel.Words;
     return View("Index",model);
 }