Example #1
0
        public ActionResult Index()
        {
            ViewBag.Keywords    = "новини, київські новини, статті, події, аналітика, афіша Києва, сервіси";
            ViewBag.Description = "Моє Місто - це цікаві новини про Київ і афіша цікавих подій у Києві. Інтернет-сайт новин про головні київські новини і те, куди піти в Києві на вихідних. Читати столичні новини варто тут!";
            var model = new HomeIndexVm
            {
                TopNews          = Mapper.Map <List <ArticleBaseVm> >(_context.GetTopNews()),
                LastNews         = Mapper.Map <List <ArticleBaseVm> >(_context.GetLastNews()),
                InterestedEvents = Mapper.Map <List <EventBaseVm> >(_context.GetInterestedEvents()),
                LastTravels      = Mapper.Map <List <ArticleBaseVm> >(_context.GetTopTravels()),
            };

            var places = _context.GetPlaceInfo(model.InterestedEvents.Select(s => s.EventId).ToList());

            Parallel.ForEach(model.InterestedEvents, eventItem =>
            {
                if (places.ContainsKey(eventItem.EventId))
                {
                    eventItem.PlaceUrl  = places[eventItem.EventId].Item1;
                    eventItem.PlaceName = places[eventItem.EventId].Item2;
                }
            });

            return(View(model));
        }