示例#1
0
        public ActionResult GetView(int tileId)
        {
            var tile = db.Tile.Find(tileId);

            // which tile is it?

            if (tile.TileType == 1)
            {
                // this is a noticeboard tile.
                var noticeBoard = tile as Noticeboard;
                // get Noticeboard Items ViewModel.
                var noticeboardItem = NoticeboardReader.GetNoticeboardItem(noticeBoard, db);
                if (noticeboardItem == null)
                {
                    return(PartialView("_ErrorPartialView", "Cannot find noticeboard item, check your configuration"));
                }
                // pass ViewModel to the view.
                return(PartialView("_NoticeBoardTilePartialView", noticeboardItem));
            }
            if (tile.TileType == 2)
            {
                // this is a calendar tile.
                var calender = tile as Calender;
                // get Calendar Items ViewModel.
                var calendarItems = CalendarReader.GetCalendarItems(calender, db);
                // pass ViewModel to the view.
                return(PartialView("_CalendarTilePartialView", calendarItems));
            }
            if (tile.TileType == 3)
            {
                // this is a newsfeed tile.
                var newstile = tile as Newsfeed;
                // get Newsfeed Items ViewModel.
                var newsItems = RssReader.Read(newstile.RssUrl);
                // pass ViewModel to the view.
                return(PartialView("_NewsFeedTilePartialView", newsItems));
            }
            if (tile.TileType == 4)
            {
                // this is the a Twitter tile.
                var twitterTile = tile as Twitter;
                // get Twitter Items ViewModel.
                var tweets = TwitterReader.GetTweets(twitterTile.SearchCriteria);
                // pass ViewModel to the view.
                return(PartialView("_TwitterTilePartialView", tweets));
            }

            return(PartialView("_TilePartialView"));
        }