/// <summary> /// Action for news detail /// </summary> /// <param name="topic">topic name: may "npb", "mlb", "jleague"</param> /// <param name="newsItemID">id of news which is displaied</param> /// <param name="sportID">id of sport: 1 - npb, 2-jleague, ...</param> /// <param name="uniqueID">gameID/leagueID when news item was clicked from /npb/game/{gameID} or /jleague/j1/ or ...</param> /// <param name="teamID"> when news item was clicked from /npb/teams/{teamID}/xxx/ or /jleague/j1/teams/{teamid}/news/ or ... </param> public ActionResult Index(string topic, long newsItemID, int sportID, string uniqueID, string teamID) { ViewBag.topic = topic; ViewBag.sportID = sportID; ViewBag.newsItemID = newsItemID; ViewBag.pageNO = "7-1"; int teamLeagueFlag = 0; int teamId = -1; int leagueId = -1; if (!string.IsNullOrEmpty(uniqueID) && Int32.TryParse(uniqueID, out leagueId)) ViewBag.uniqueID = uniqueID; if (!string.IsNullOrEmpty(teamID) && Int32.TryParse(teamID, out teamId)) ViewBag.teamID = teamID; // for every sportID, if teamID exists then do 12th proccessing if (teamId != -1 && ViewBag.teamID != null) { //for every sportID, do 12th proccessing teamLeagueFlag = Constants.TEAM_TOPIC_CLASSIFICATION; } else { // do 13th proccessing if (leagueId != -1 && ViewBag.uniqueID != null) { if (sportID == 2 || sportID == 4) teamLeagueFlag = Constants.LEAGUE_TOPIC_CLASSIFICATION; } } var queryNewsTop = new NewsInfoViewModel(); switch(teamLeagueFlag) { case Constants.TEAM_TOPIC_CLASSIFICATION: queryNewsTop = GetBriefNewsById(newsItemID, teamLeagueFlag, teamId); break; case Constants.LEAGUE_TOPIC_CLASSIFICATION: queryNewsTop = GetBriefNewsById(newsItemID, teamLeagueFlag, leagueId); break; default: queryNewsTop = GetBriefNewsById(newsItemID); break; } NewsTopicViewModel newsTopic = new NewsTopicViewModel(); if (queryNewsTop != null) { // Add a record to NewsReading SaveNewRecordToNewsReading(queryNewsTop.NewsItemID); // get Caption for main photo var query = news.PhotoNews.Find(queryNewsTop.NewsItemID, Constants.IMAGE_CAPTION_DUID); if (query != null) { queryNewsTop.Caption = query.Content; } newsTopic.NewsDisplayed = queryNewsTop; // get number of news will display on newsTopic.RelatedNews var spara = news.SystemParamater.Find(3); int relatedNewsSize = 5; if (spara != null) relatedNewsSize = Convert.ToInt32(spara.Spara); // depend on teamLeagueFlag do the corresponding function for RelatedNews switch (teamLeagueFlag) { case Constants.TEAM_TOPIC_CLASSIFICATION: // team related news newsTopic.RelatedNews = GetRelatedNews(queryNewsTop.NewsItemID, queryNewsTop.ItpcSubjectCode, teamLeagueFlag, teamId); ViewBag.relatedNewsSize = relatedNewsSize; break; case Constants.LEAGUE_TOPIC_CLASSIFICATION: // league related news newsTopic.RelatedNews = GetRelatedNews(queryNewsTop.NewsItemID, queryNewsTop.ItpcSubjectCode, teamLeagueFlag, leagueId); ViewBag.relatedNewsSize = relatedNewsSize; break; default: // orther (no teamID, no uniqueID) newsTopic.RelatedNews = GetRelatedNews(queryNewsTop.NewsItemID, queryNewsTop.ItpcSubjectCode); break; } newsTopic.RelatedTopics = GetRelatedTopics(queryNewsTop.NewsItemID, sportID); newsTopic.RelatedPosts = PostedController.GetRecentPosts(Constants.NPB_POST_SPORT_TYPE, sportID, null); return View(newsTopic); } return View("Error410"); }
public ViewModelLocator() { try { var config = new ConfigurationBuilder(); config.AddJsonFile("autofac.json"); var module = new ConfigurationModule(config.Build()); var builder = new ContainerBuilder(); builder.RegisterModule(module); Container = builder.Build(); navigationService = Container.Resolve <INavigationService>(); mainWindowViewModel = Container.Resolve <MainWindowViewModel>(); problemsViewModel = Container.Resolve <ProblemsViewModel>(); infrastructureViewModel = Container.Resolve <InfrastructureViewModel>(); buildingViewModel = Container.Resolve <BuildingViewModel>(); governmentViewModel = Container.Resolve <GovernmentViewModel>(); hospitalViewModel = Container.Resolve <HospitalViewModel>(); ideaViewModel = Container.Resolve <IdeaViewModel>(); publicTransportViewModel = Container.Resolve <PublicTransportViewModel>(); roadViewModel = Container.Resolve <RoadViewModel>(); securityViewModel = Container.Resolve <SecurityViewModel>(); tradeAdvertisingViewModel = Container.Resolve <TradeAdvertisingViewModel>(); yardViewModel = Container.Resolve <YardViewModel>(); helloViewModel = Container.Resolve <HelloViewModel>(); importantListViewModel = Container.Resolve <ImportantListViewModel>(); importantInfofViewModel = Container.Resolve <ImportantInfofViewModel>(); newsListViewModel = Container.Resolve <NewsListViewModel>(); newsInfoViewModel = Container.Resolve <NewsInfoViewModel>(); buildingPVModel = Container.Resolve <BuildingPVModel>(); governmentPVModel = Container.Resolve <GovernmentPVModel>(); hospitalPVModel = Container.Resolve <HospitalPVModel>(); ideaPVModel = Container.Resolve <IdeaPVModel>(); infrastructurePVModel = Container.Resolve <InfrastructurePVModel>(); publicTransportPVModel = Container.Resolve <PublicTransportPVModel>(); roadPVModel = Container.Resolve <RoadPVModel>(); securityPVModel = Container.Resolve <SecurityPVModel>(); tradeAdvertisingPVModel = Container.Resolve <TradeAdvertisingPVModel>(); yardPVModel = Container.Resolve <YardPVModel>(); navigationService.Register <ProblemsViewModel>(problemsViewModel); navigationService.Register <InfrastructureViewModel>(infrastructureViewModel); navigationService.Register <BuildingViewModel>(buildingViewModel); navigationService.Register <GovernmentViewModel>(governmentViewModel); navigationService.Register <HospitalViewModel>(hospitalViewModel); navigationService.Register <IdeaViewModel>(ideaViewModel); navigationService.Register <PublicTransportViewModel>(publicTransportViewModel); navigationService.Register <RoadViewModel>(roadViewModel); navigationService.Register <SecurityViewModel>(securityViewModel); navigationService.Register <TradeAdvertisingViewModel>(tradeAdvertisingViewModel); navigationService.Register <YardViewModel>(yardViewModel); navigationService.Register <HelloViewModel>(helloViewModel); navigationService.Register <ImportantListViewModel>(importantListViewModel); navigationService.Register <ImportantInfofViewModel>(importantInfofViewModel); navigationService.Register <NewsListViewModel>(newsListViewModel); navigationService.Register <NewsInfoViewModel>(newsInfoViewModel); navigationService.Register <BuildingPVModel>(buildingPVModel); navigationService.Register <GovernmentPVModel>(governmentPVModel); navigationService.Register <HospitalPVModel>(hospitalPVModel); navigationService.Register <IdeaPVModel>(ideaPVModel); navigationService.Register <InfrastructurePVModel>(infrastructurePVModel); navigationService.Register <PublicTransportPVModel>(publicTransportPVModel); navigationService.Register <RoadPVModel>(roadPVModel); navigationService.Register <SecurityPVModel>(securityPVModel); navigationService.Register <TradeAdvertisingPVModel>(tradeAdvertisingPVModel); navigationService.Register <YardPVModel>(yardPVModel); navigationService.Navigate <HelloViewModel>(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }