public IViewComponentResult Invoke()
        {
            var news = this.mainNewsSourcesRepository.All()
                       .Select(x => x.MainNews.OrderByDescending(x => x.Id).FirstOrDefault())
                       .OrderByDescending(x => x.CreatedOn).To <MainNewsViewModel>().ToList();
            var viewModel = new MainNewsComponentViewModel {
                MainNews = news
            };

            return(this.View(viewModel));
        }
        public IViewComponentResult Invoke()
        {
            var news = this.mainNewsRepository.All().Where(x => !x.Source.IsDeleted).GroupBy(
                x => x.SourceId,
                (key, g) => g.OrderByDescending(e => e.Id).FirstOrDefault()).OrderByDescending(x => x.CreatedOn)
                       .To <MainNewsViewModel>().ToList();
            var viewModel = new MainNewsComponentViewModel {
                MainNews = news
            };

            return(this.View(viewModel));
        }