private async Task <bool> ProcessHomeFeed(DownloadHomeFeedOperation downloadHomeFeedOperation) { try { List <Task> taskList = new List <Task>(); FeedOperationDetails op = downloadHomeFeedOperation.FeedOperationDetails; BackendResult <NewsFeedData, ResultCode> res = await NewsFeedService.Current.GetNewsFeed(this.CreateNewsFeedGetParams(op)); if (res.ResultCode == ResultCode.Succeeded) { NewsFeedData newsFeedData = res.ResultData; Feed feed = await SocialManager.OpenHomeFeedAsync(op); foreach (NewsItem newsFeedItem in newsFeedData.items) { FeedItem feedItem = this.CreateFeedItem(newsFeedItem, newsFeedData.groups, newsFeedData.profiles); if (feedItem != null) { ((ICollection <FeedItem>)feed.Items).Add(feedItem); } } if (((IEnumerable <FeedItem>)feed.Items).Any <FeedItem>()) { RemoteIdHelper.NewsFeedNewFromData.Instance.SetParams(((IEnumerable <FeedItem>)feed.Items).Last <FeedItem>().RemoteId, res.ResultData.new_offset, res.ResultData.next_from); } await feed.SaveAsync(); newsFeedData = (NewsFeedData)null; } return(res.ResultCode == ResultCode.Succeeded); } catch { Debugger.Break(); return(false); } }