private IEnumerable <TVSeriesShortModel> ConvertWatchesToModels(IEnumerable <TVSeriesWatch> watches) { IEnumerable <TVSeriesShortModel> result = watches.Select(e => { Tuple <string, string, string> parts = TVSeriesQuery.GetUrlParts(e.GetUrlPart()); var pars = new { baseUrlPart = parts.Item1, season = parts.Item2, episode = parts.Item3 }; return(new TVSeriesShortModel { Title = e.TransTitle, Episode = e.Episode, Url = Url.Action("Watch", RouteConfig.TV_SERIES_CONTROLLER, pars), ImageUrl = Url.Action("GetImageByName", RouteConfig.TV_SERIES_CONTROLLER, pars), }); }); return(result); }
public void WriteTVSeries(XElement root) { var tvSeriesQuery = new TVSeriesQuery(_languageId); List <TVSeriesInfo> covers = tvSeriesQuery.GetSeriesCovers(); foreach (TVSeriesInfo tvSeriesInfo in covers) { string baseUrlPart = tvSeriesInfo.GetUrlPart(); _sitemapItemWriter.WriteUrlToResult(root, UrlBuilder.GetTVSeriesUrl(baseUrlPart), 0.7m, ChangeFrequency.WEEKLY); List <TVSeriesWatch> watches = tvSeriesQuery.GetSeriesWatches(tvSeriesInfo.GetId(), IdValidator.INVALID_ID); foreach (TVSeriesWatch tvSeriesWatch in watches) { Tuple <string, string, string> pars = TVSeriesQuery.GetUrlParts(tvSeriesWatch.GetUrlPart()); string url = UrlBuilder.GetTVSeriesDetailUrl(pars.Item1, pars.Item2, pars.Item3); _sitemapItemWriter.WriteUrlToResult(root, url, 0.6m, ChangeFrequency.MONTHLY); } } }