// // GET: /News/ [NavigationTab("news")] public ActionResult Index(int page = 0) { NewsRepository nr = new NewsRepository(); string twoLetter = Thread.CurrentThread.CurrentUICulture.TwoLetterISOLanguageName; Language language = LanguageRepository.GetLanguage(twoLetter); const int pageSize = Settings.News.NewsItemsPerPage; var allNews = nr.GetAllNewsItems(); var pageNews = allNews.Skip(pageSize * page) .Take(pageSize); var query = from newsItem in pageNews let newsItemContent = nr.GetNewsItemContent(newsItem.NewsItemID, language) select new NewsItemViewModel { NewsItemID = newsItem.NewsItemID, TimeStamp = newsItem.TimeStamp, Author = newsItem.Author, Url = newsItem.Url, Title = newsItemContent.Title, Lead = newsItemContent.Lead, Body = MvcHtmlString.Create(newsItemContent.Body), Views = newsItem.Views }; return View( new NewsViewModel { NewsItems = query.ToList(), PageIndex = page, PageSize = pageSize, TotalCount = allNews.Count() }); }